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

Essensstunde
quelle

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 ..

Andy Shinn
quelle
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