2016-06-27 15 views
2

Mein Dockerfile enthält eineDockerfile Einstiegspunkt Skript Argumente in Docker Lauf

RUN xyz.sh --IP localhost 

und wenn ich den Befehl Docker Lauf geben möchte ich eine neue IP-Adresse ein:

docker run -it IP 127.0.0.1 name:tag 

Wie es passieren wie Dies?

Ich habe versucht, ENV in Docker-Datei und die Verwendung von -e im Befehl run, aber nichts funktioniert.

Antwort

4

RUN Anweisungen zur Erstellungszeit passieren.

ENTRYPOINT und CMD Anweisungen zur Laufzeit ausgeführt werden.

Sie wollen wahrscheinlich so etwas wie dies in Ihrem Dockerfile:

docker run -it some-image --IP 127.0.0.1

Argumente nach dem Bild überschreiben die CMD Anweisung so ist, dann läuft es ENTRYPOINT:

.... 
ENTRYPOINT ["xyz.sh"] 

CMD ["--IP", "127.0.0.1"] 
.... 

Dann sind Sie mit laufen Anweisung gefolgt von Ihren Argumenten.

+0

Hallo ich erhalte einen Fehler - unbekannter Befehl: ENTRYPOINT beim Erstellen des Bildes –

+0

Poste bitte deine volle Dockerfile und die Ausgabe von 'docker info'. – johnharris85

+0

Bitte überprüfen Sie die Frage Ich habe meine aktuelle Dockerfile –