Container erstellen und stoppen
In diesem Schritt lernen Sie, wie Sie einen Docker-Container erstellen und stoppen. Ein Container ist eine ausführbare Instanz eines Images. Sie können Container mit der Docker-API oder CLI erstellen, starten, stoppen, verschieben oder löschen.
Zuerst laden wir das hello-world
-Image von Docker Hub. Dies ist ein sehr kleines Image, das sich gut für Tests eignet.
docker pull hello-world
Sie sollten eine Ausgabe sehen, die anzeigt, dass das Image heruntergeladen und extrahiert wird.
Using default tag: latest
latest: Pulling from library/hello-world
...
Status: Downloaded newer image for hello-world:latest
docker.io/library/hello-world:latest
Nun erstellen und starten wir einen Container aus dem hello-world
-Image. Wenn Sie diesen Befehl ausführen, erstellt Docker einen neuen Container und führt den im Image definierten Befehl aus. Im Fall von hello-world
gibt der Befehl einfach eine Nachricht aus und beendet sich dann.
docker run hello-world
Sie sollten eine ähnliche Ausgabe wie diese sehen:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Diese Ausgabe bestätigt, dass der Container erfolgreich ausgeführt wurde und seine Nachricht ausgegeben hat. Da der Befehl im Container abgeschlossen ist, wurde der Container gestoppt.
Um alle Container auf Ihrem System anzuzeigen, einschließlich der gestoppten, können Sie den Befehl docker ps -a
verwenden.
docker ps -a
Sie sehen eine Liste von Containern. Der hello-world
-Container sollte in der Liste sein und seinen Status als Exited
anzeigen.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
... hello-world "/hello" About a minute ago Exited (0) 58 seconds ago ...
Nun erstellen wir einen weiteren Container, diesmal verwenden wir das ubuntu
-Image und führen einen Befehl aus, der den Container für kurze Zeit am Laufen hält. Wir verwenden den sleep
-Befehl, um den Container für 10 Sekunden aktiv zu halten.
Zuerst laden wir das ubuntu
-Image:
docker pull ubuntu
Sie sollten eine Ausgabe sehen, die anzeigt, dass das Image heruntergeladen wird.
Using default tag: latest
latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest
Nun starten wir einen Container aus dem ubuntu
-Image und führen den Befehl sleep 10
aus. Wir führen dies im Detached-Modus (-d
) aus, damit der Container im Hintergrund läuft und unser Terminal nicht blockiert.
docker run -d ubuntu sleep 10
Dieser Befehl gibt die Container-ID aus.
[container_id]
Verwenden Sie docker ps
, um die laufenden Container anzuzeigen.
docker ps
Sie sollten den ubuntu
-Container mit dem Status Up
in der Liste sehen.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[container_id] ubuntu "sleep 10" About a minute ago Up 5 seconds ...
Nach etwa 10 Sekunden wird der sleep 10
-Befehl beendet und der Container stoppt. Verwenden Sie erneut docker ps -a
, um alle Container einschließlich des gestoppten anzuzeigen.
docker ps -a
Der ubuntu
-Container sollte nun den Status Exited
haben.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[container_id] ubuntu "sleep 10" About a minute ago Exited (0) 5 seconds ago ...
...
Abschließend stoppen wir den ubuntu
-Container manuell mit dem Befehl docker stop
. Sie können einen laufenden Container anhand seiner ID oder seines Namens stoppen. Wir verwenden die Container-ID, die beim Starten des Containers ausgegeben wurde. Ersetzen Sie [container_id]
durch die tatsächliche ID Ihres ubuntu-Containers.
docker stop [container_id]
Dieser Befehl gibt die ID des gestoppten Containers aus.
[container_id]
Verwenden Sie erneut docker ps
, um zu bestätigen, dass der Container nicht mehr läuft.
docker ps
Der ubuntu
-Container sollte nicht in der Liste der laufenden Container erscheinen.