Grundlegendes zum Einstiegspunkt-Flag in Docker
- Die Entrypoint-Anweisung verstehen
- Verwenden Sie das Entrypoint-Flag, um Argumente zu übergeben
- Abschluss
Wir verwenden das Einstiegspunkt-Flag (--entrypoint
) im Befehl docker run
, um den auszuführenden Befehl anzugeben, wenn wir einen Docker-Container starten. Mit diesem Flag können wir das Verhalten des Containers anpassen und den Befehl bestimmen, den Docker im Voraus ausführen wird.
In diesem Artikel wird ein Überblick über die Einstiegspunktanweisung gegeben, und Docker verwendet sie beim Ausführen des Befehls docker run
.
Die Entrypoint-Anweisung verstehen
Standardmäßig ist der Einstiegspunkt für einen Docker-Container die Anweisung CMD
in der Docker-Datei, die zum Erstellen des Images verwendet wird. Die Anweisung CMD
gibt den Standardbefehl an, den Docker beim Starten des Containers ausführt.
Das folgende Dockerfile definiert beispielsweise den Standard-Einstiegspunkt für das Bild als den Befehl echo
.
FROM ubuntu:18.04
CMD ["echo", "Hello, World!"]
Wir können die Befehle docker build
und docker run
verwenden, um das Image zu erstellen und einen Container basierend auf dem Image auszuführen.
Beispielcode:
docker build -t my-image .
docker run my-image
In diesem Beispiel startet der Befehl docker run
einen Container basierend auf dem Image my-image
und führt den Befehl echo
als Einstiegspunkt des Containers aus. Der obige Befehl gibt die Nachricht "Hello, World!"
an die Konsole aus.
Wenn wir jedoch einen anderen Einstiegspunkt für den Container angeben möchten, können wir die Option --entrypoint
verwenden, wenn wir den Befehl docker run
ausführen.
Beispielcode:
docker run --entrypoint /bin/sh my-image:latest
Verwenden Sie das Entrypoint-Flag, um Argumente zu übergeben
In diesem Befehl gibt die Option --entrypoint
den Einstiegspunkt des Containers als Befehl /bin/sh
an. Dieser Befehl überschreibt den in der Dockerfile angegebenen Standardeinstiegspunkt.
Es bewirkt, dass /bin/sh
den Befehl ausführt, wenn Docker den Container startet, anstelle der definierten CMD in der Dockerfile.
Zusätzlich zur Angabe des Einstiegspunkts eines Containers können wir auch das Einstiegspunkt-Flag verwenden, um Argumente an den Einstiegspunktbefehl zu übergeben.
Beispielcode:
docker run --entrypoint /bin/sh my-image:latest -c
Der Befehl docker run --entrypoint
verwendet die folgende Syntax.
docker run --entrypoint <entrypoint.sh> <image:tag> <arg1> <arg2> <arg3>
Abschluss
Wir führen den Befehl mit einem --entrypoint
-Flag aus, um dabei zu helfen, die Standard-Befehlsshell auf einem gestarteten Container anzugeben. Docker verwendet es, um das Verhalten des Containers anzupassen und bestimmte Befehle oder Skripte bei seiner ersten Verwendung auszuführen.
Dieses Flag kann beim Ausführen von Containern in einer Produktionsumgebung nützlich sein, in der Sie möglicherweise sicherstellen möchten, dass der Container immer einen bestimmten Befehl startet und ausführt.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn