Listen Sie nur die angehaltenen Container in Docker auf
- Ziehen Sie das Nginx-Image aus dem Docker-Hub
- Listen Sie die Docker-Images auf
- Führen Sie Container aus dem Nginx-Image aus
- Listen Sie die laufenden Container auf
- Stoppen Sie einen laufenden Container
-
Listen Sie den angehaltenen Container mit dem Befehl
docker ps
auf -
Listen Sie den angehaltenen Container mit dem Befehl
docker container ls
auf - Abschluss
Docker stellt uns nützliche Befehle zur Verfügung, mit denen wir unsere Bilder und Container verwalten können, aber einige der Befehle sind nicht offensichtlich. Zum Beispiel können wir den Docker-Befehl docker ps
verwenden, um eine Liste der laufenden Container anzuzeigen, oder den Docker-Befehl docker ps -a
, um eine Liste aller Container anzuzeigen, egal ob gestoppt oder ausgeführt.
Eine nicht offensichtliche Funktionalität ist das Anzeigen einer Liste nur der angehaltenen Container. In diesem Tutorial erfahren Sie, wie Sie eine Liste nur der gestoppten Container in Docker anzeigen.
Ziehen Sie das Nginx-Image aus dem Docker-Hub
In diesem Tutorial verwenden wir das Nginx-Image, um Container davon auszuführen, und verwenden diese Container, um das Ziel dieses Artikels zu erreichen.
Öffnen Sie ein neues Terminalfenster mit der Tastenkombination ALT+F12 auf Ihrem Computer und verwenden Sie dann den folgenden Befehl, um ein Nginx-Image aus dem Docker-Hub abzurufen.
~$ docker pull nginx
Da wir das tag
nicht angegeben haben, ruft dieser Befehl die neueste Version von Nginx ab. Wir können die Download-Details im Terminalfenster anzeigen, wie unten gezeigt.
Using default tag: latest
latest: Pulling from library/nginx
e9995326b091: Pull complete
71689475aec2: Pull complete
f88a23025338: Pull complete
0df440342e26: Pull complete
eef26ceb3309: Pull complete
8e3ed6a9e43a: Pull complete
Digest: sha256:943c25b4b66b332184d5ba6bb18234273551593016c0e0ae906bab111548239f
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
Listen Sie die Docker-Images auf
Sobald der Download abgeschlossen ist, können wir mit dem folgenden Befehl, der alle Bilder auflistet, überprüfen, ob das Nginx-Image heruntergeladen wurde.
~$ docker image ls
Wenn zuvor andere Images installiert wurden, werden sie alle mit diesem Befehl aufgelistet. In unserem Fall haben wir nur das in diesem Tutorial verwendete Bild angezeigt, um zu überprüfen, ob das Bild heruntergeladen wurde.
Die Bilddetails sind unten dargestellt:
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 76c69feac34e 2 days ago 142MB
Führen Sie Container aus dem Nginx-Image aus
Zu Testzwecken werden wir nur zwei Container mit den Namen container-one
bzw. container-two
betreiben. Führen Sie im selben Terminalfenster die folgenden Befehle nacheinander aus, um die beiden Container mit dem Image nginx
auszuführen.
Ausführen von container-one
:
~$ docker run --name container-one -d -p 3000:80 nginx
Ausgang:
9e70a29947c373df2abd4748271d252f297c6a06669f7cffb04fe95ee5fca671
Ausführen von Container-zwei
:
~$ docker run --name container-two -d -p 5000:80 nginx
Ausgang:
43cd017b94062e47c6c3f868ed74fb5ca7920522e870eceb58115e388e9d43a5
Beachten Sie, dass der erste Container Port 3000 auf dem Host verfügbar macht, um auf Port 80 auf dem Container zu lauschen, während der zweite Container Port 5000 auf dem Host verfügbar macht, um auf demselben Port wie der vorherige Container zu lauschen.
Listen Sie die laufenden Container auf
Im vorherigen Abschnitt haben wir zwei Container mit den Namen container-one
und container-two
ausgeführt. Um zu überprüfen, ob diese Container ausgeführt werden, können wir den folgenden Befehl verwenden, der alle ausgeführten Container auflistet.
~$ docker ps
Ausgang:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
43cd017b9406 nginx "/docker-entrypoint.…" 4 minutes ago Up 4 minutes 0.0.0.0:5000->80/tcp container-two
9e70a29947c3 nginx "/docker-entrypoint.…" 24 minutes ago Up 24 minutes 0.0.0.0:3000->80/tcp container-one
Stoppen Sie einen laufenden Container
Bevor wir den gestoppten Container auflisten, müssen wir einen Container stoppen, und wir können den folgenden Befehl verwenden, um einen Container mit seinem Namen zu stoppen. Sie können mehrere Container ausführen und stoppen.
~$ docker stop container-one
Ausgang:
container-one
Wenn wir den Befehl docker ps
ausführen, werden wir feststellen, dass nur container-two
läuft. Im nächsten Abschnitt erfahren Sie, wie Sie nur den angehaltenen Container auflisten, was das Hauptziel dieses Tutorials ist.
Listen Sie den angehaltenen Container mit dem Befehl docker ps
auf
Der Befehl docker ps
hat ein --filter
-Flag, das wir angeben können, um die Container basierend auf einer Bedingung zu filtern. Der Wert des --filter
-Flags erwartet eine Bedingung, die verwendet wird, um eine Ausgabe bereitzustellen.
Verwenden Sie im selben Terminalfenster den folgenden Befehl, um Container mit dem Status beendet
zu filtern.
~$ docker ps --filter "status=exited"
Ausgang:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9e70a29947c3 nginx "/docker-entrypoint.…" 48 minutes ago Exited (0) 18 minutes ago container-one
Listen Sie den angehaltenen Container mit dem Befehl docker container ls
auf
Dieser Befehl hat dieselbe Syntax wie das vorherige Beispiel. Der Befehl docker container ls
hat ein --filter
-Flag, das wir angeben können, um die Container basierend auf einer Bedingung zu filtern. Da das --filter
-Flag dasselbe ist, müssen wir nur die Bedingung bereitstellen, um die Container mit dem Status exited
zu filtern, wie unten gezeigt.
~$ docker container ls --filter "status=exited"
Ausgang:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9e70a29947c3 nginx "/docker-entrypoint.…" 48 minutes ago Exited (0) 18 minutes ago container-one
Beachten Sie, dass das --filter
-Flag in Form von Schlüssel-Wert
-Paaren bereitgestellt werden sollte, und falls mehrere Filter vorhanden sind, stellen Sie sicher, dass mehrere Flags bereitgestellt werden.
In diesem Tutorial haben wir den Filter namens status
verwendet, um die Container basierend auf dem Status zu filtern. Die Docker-Dokumentation bietet jedoch andere Strategien, die wir zum Filtern der Container nutzen können.
Abschluss
In diesem Tutorial haben wir gelernt, wie Sie nur die angehaltenen Container in Docker auflisten, indem Sie einen Nginx-Container nutzen. Die beiden Ansätze, die dafür behandelt werden, umfassen das Auflisten eines angehaltenen Containers mit dem Befehl ps
und das Auflisten eines angehaltenen Containers mit dem Befehl container ls
.
Die beiden Befehle haben ein --filter
-Flag, das ein Schlüssel-Wert-Paar akzeptiert, um die Container basierend auf einer bestimmten Bedingung zu filtern.
David is a back end developer with a major in computer science. He loves to solve problems using technology, learning new things, and making new friends. David is currently a technical writer who enjoys making hard concepts easier for other developers to understand and his work has been published on multiple sites.
LinkedIn GitHubVerwandter Artikel - Docker Container
- Der Unterschied zwischen Docker-Container und Docker-Image
- Erstellen Sie einen Container in einer Docker-Compose-Datei neu
- Führen Sie Container mit Docker kontinuierlich im Hintergrund aus
- Geben Sie einen laufenden Docker-Container mit einem neuen Pseudo-TTY ein
- Löschen Sie Container dauerhaft in Docker