Listen Sie nur die angehaltenen Container in Docker auf

  1. Ziehen Sie das Nginx-Image aus dem Docker-Hub
  2. Listen Sie die Docker-Images auf
  3. Führen Sie Container aus dem Nginx-Image aus
  4. Listen Sie die laufenden Container auf
  5. Stoppen Sie einen laufenden Container
  6. Listen Sie den angehaltenen Container mit dem Befehl docker ps auf
  7. Listen Sie den angehaltenen Container mit dem Befehl docker container ls auf
  8. Abschluss
Listen Sie nur die angehaltenen Container in Docker auf

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.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
David Mbochi Njonge avatar David Mbochi Njonge avatar

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 GitHub

Verwandter Artikel - Docker Container