GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So überschreiben Sie den Einstiegspunkt mit Docker Run

Einführung

Einstiegspunkt und CMD sind Anweisungen in der Dockerfile, die den Prozess in einem Docker-Image definieren. Sie können einen verwenden oder beide kombinieren, je nachdem, wie Sie Ihren Container ausführen möchten.

Ein Unterschied besteht darin, dass im Gegensatz zu CMD , können Sie den ENTRYPOINT nicht überschreiben Befehl einfach durch Hinzufügen neuer Befehlszeilenparameter. Um ENTRYPOINT zu überschreiben, müssen Sie docker run ändern Befehl nach einer bestimmten Syntax.

In diesem Tutorial erfahren Sie, wie Sie ENTRYPOINT mit dem Docker-Run-Befehl überschreiben.

Voraussetzungen

  • Zugriff auf eine Befehlszeile
  • Ein Benutzer mit sudo Privilegien
  • Eine laufende Docker-Instanz
  • Ein vorhandenes Docker-Image

ENTRYPOINT mit docker run überschreiben

Um zu veranschaulichen, wie dieser Befehl überschrieben wird, führen wir einen Container aus, der die Nachricht Hello World zurückgibt durch die Kombination von ENTRYPOINT und CMD in der Dockerfile.

In der Dockerfile ist der ENTRYPOINT Befehl definiert die ausführbare Datei, während CMD setzt den Standardparameter.

FROM ubuntu
MAINTAINER sofija
RUN apt-get update
ENTRYPOINT [“echo”, “Hello”]
CMD [“World”]

Wenn Sie aus dieser Datei ein Image erstellen und es zum Ausführen eines Docker-Containers verwenden, zeigt die Ausgabe Folgendes an:

Sie können die Standard-CMD einfach überschreiben, indem Sie den gewünschten Parameter zum docker run hinzufügen Befehl:

sudo docker run [container_name] [new_parameter]

Im folgenden Beispiel haben wir den CMD-Parameter World geändert , indem Sie Sofija hinzufügen zum Befehl. Als Ergebnis zeigt die Ausgabe Hello Sofija an .

Möglicherweise möchten Sie jedoch die ausführbare Standarddatei überschreiben und beispielsweise eine Shell in einem Container ausführen. In diesem Fall müssen Sie den --entrypoint verwenden kennzeichnen und den Container mit der folgenden Syntax ausführen:

sudo docker run --entrypoint [new_command] [docker_image] [optional:value]

Um die standardmäßige Echonachricht in unserem Beispiel zu überschreiben und den Container interaktiv auszuführen, verwenden wir den Befehl:

sudo docker run -it --entrypoint /bin/bash [docker_image]

Die Ausgabe zeigt uns, dass wir uns jetzt im Container befinden.


Ubuntu
  1. So installieren Sie WordPress mit Docker

  2. Wie führe ich ein Programm in einem Docker-Container aus?

  3. Wie führe ich Glmark2 auf der dedizierten GPU aus?

  4. Wie man ein Skript ausführt??

  5. So führen Sie MySQL in einem Docker-Container aus

So installieren Sie Gitea auf Ubuntu mit Docker

So führen Sie eine .NET-App in Docker aus

So führen Sie PHPMyAdmin in einem Docker-Container aus

So führen Sie Grafana in einem Docker-Container aus

So führen Sie Jenkins in Docker mit Docker Compose with Volumes aus

So führen Sie Docker-Container aus