Wie übergebe ich Argumente an eine Docker-Datei?


119

Ich verwende die RUN-Anweisung innerhalb von a Dockerfile, um eine Drehzahl zu installieren

RUN yum -y install samplerpm-2.3

Ich möchte jedoch den Wert "2.3" als Argument übergeben. Meine RUN-Anweisung sollte ungefähr so ​​aussehen:

RUN yum -y install samplerpm-$arg

wo $arg=2.3

Antworten:


151

Sie suchen --build-argund die ARGAnweisung. Diese sind ab Docker 1.9 neu. Überprüfen Sie https://docs.docker.com/engine/reference/builder/#arg . Auf diese Weise können Sie hinzufügen , ARG argum das Dockerfileund dann bauen mit docker build --build-arg arg=2.3 ..


1
Nach all dem erhalte ich eine Fehlermeldung ** Kein Paket samplerpm- $ arg verfügbar. ** Es scheint, dass der Argumentwert von 2.3 nicht ersetzt wird.
Mahlzeit

1
Sie müssen wahrscheinlich eine neue Frage mit dem zum Erstellen Dockerfileverwendeten Befehl und dem Fehler erstellen, damit ich Sie dabei unterstützen kann.
Andy Shinn

2
Was ist stattdessen mit env-Variablen?
Alexander Mills
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.