Verwendung des docker container ls Befehls zur Container-Auflistung

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie den Befehl docker container ls (auch bekannt als docker ps) effektiv nutzen können, um Ihre Docker-Container aufzulisten und zu verwalten. Sie beginnen damit, nur die aktuell laufenden Container aufzulisten, erweitern dann Ihre Ansicht, um alle Container einzubeziehen, einschließlich derjenigen, die beendet wurden.

Darüber hinaus werden Sie untersuchen, wie Sie die Containerliste anhand verschiedener Kriterien wie Status und Name filtern können, um spezifische Container schnell zu finden. Abschließend lernen Sie, wie Sie zusätzliche Informationen wie die Containergröße anzeigen und die Ausgabe nach Ihren Bedürfnissen formatieren können, um ein umfassendes Verständnis Ihrer Containerlandschaft zu erhalten.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/run("Run a Container") docker/ContainerOperationsGroup -.-> docker/ps("List Running Containers") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/run -.-> lab-555114{{"Verwendung des docker container ls Befehls zur Container-Auflistung"}} docker/ps -.-> lab-555114{{"Verwendung des docker container ls Befehls zur Container-Auflistung"}} docker/stop -.-> lab-555114{{"Verwendung des docker container ls Befehls zur Container-Auflistung"}} docker/pull -.-> lab-555114{{"Verwendung des docker container ls Befehls zur Container-Auflistung"}} end

Laufende Container auflisten

In diesem Schritt lernen Sie, wie Sie laufende Docker-Container auflisten können. Der Befehl docker ps wird verwendet, um Informationen über aktive Container anzuzeigen.

Zuerst starten wir einen einfachen Container, der aktiv bleibt. Wir verwenden das ubuntu-Image und führen einen Befehl aus, der den Container am Leben hält.

docker pull ubuntu
docker run -d ubuntu sleep infinity

Der Befehl docker pull ubuntu lädt das ubuntu-Image von Docker Hub herunter. Der Befehl docker run -d ubuntu sleep infinity startet einen neuen Container basierend auf dem ubuntu-Image.

  • -d führt den Container im Detached-Modus aus, d.h. er läuft im Hintergrund.
  • ubuntu ist der Name des Images.
  • sleep infinity ist der im Container ausgeführte Befehl, der den Container unbegrenzt aktiv hält.

Nun listen wir die laufenden Container mit dem Befehl docker ps auf.

docker ps

Dieser Befehl zeigt eine Liste aller aktuell laufenden Container an. Sie sollten den soeben gestarteten ubuntu-Container sehen. Die Ausgabe enthält Informationen wie Container-ID, Image, Befehl, Erstellungszeit, Status, Ports und Namen.

Alle Container anzeigen (inkl. beendeter)

Im vorherigen Schritt haben Sie gelernt, wie Sie laufende Container mit docker ps auflisten. Allerdings zeigt docker ps nur aktuell laufende Container an. Um alle Container einzusehen, inklusive der beendeten, müssen Sie das Flag -a verwenden.

Zuerst stoppen wir den ubuntu-Container, den wir im vorherigen Schritt gestartet haben. Dazu benötigen Sie die Container-ID oder den Namen, die Sie der Ausgabe von docker ps entnehmen können.

docker stop $(docker ps -q --filter ancestor=ubuntu)

Der Befehl docker stop beendet einen laufenden Container.

  • $(docker ps -q --filter ancestor=ubuntu) ist eine Befehlssubstitution, die die ID des laufenden Containers basierend auf dem ubuntu-Image ermittelt. Das Flag -q gibt nur die Container-ID aus, und --filter ancestor=ubuntu filtert nach dem Imagenamen.

Nun listen wir alle Container auf, inklusive des beendeten, mit docker ps -a.

docker ps -a

Dieser Befehl zeigt eine Liste aller erstellten Container an, unabhängig von ihrem aktuellen Status (laufend, beendet, exited usw.). Sie sollten den ubuntu-Container in der Liste sehen, dessen Status nun "Exited" (Beendet) sein sollte.

Container nach Status und Namen filtern

In diesem Schritt lernen Sie, wie Sie die Containerliste anhand von Status und Namen mit dem --filter-Flag des docker ps-Befehls filtern können. Dies ist besonders nützlich, wenn Sie viele Container haben und bestimmte suchen.

Zuerst starten wir einen weiteren Container, diesmal mit einem spezifischen Namen.

docker run -d --name my-nginx nginx

Der Befehl docker run -d --name my-nginx nginx startet einen neuen Container basierend auf dem nginx-Image im Detached-Modus und weist ihm den Namen my-nginx zu.

  • docker pull nginx ist hier nicht explizit notwendig, da docker run das Image automatisch lädt, falls es lokal nicht verfügbar ist.

Nun listen wir nur die laufenden Container mit einem Statusfilter auf.

docker ps --filter status=running

Dieser Befehl zeigt nur Container an, die sich aktuell im Status "running" befinden. Sie sollten den my-nginx-Container in der Liste sehen.

Als nächstes filtern wir die Container nach Namen.

docker ps -a --filter name=my-nginx

Dieser Befehl listet alle Container auf (inklusive beendeter, dank -a), die den Namen my-nginx tragen. Sie sollten den my-nginx-Container mit seinem aktuellen Status sehen.

Sie können Filter auch kombinieren. Zum Beispiel, um laufende Container mit einem bestimmten Namen anzuzeigen:

docker ps --filter status=running --filter name=my-nginx

Dies zeigt den my-nginx-Container nur an, wenn er aktuell läuft.

Containergröße anzeigen und Ausgabe formatieren

In diesem Schritt lernen Sie, wie Sie die Größe von Containern anzeigen und die Ausgabe des docker ps-Befehls formatieren können. Die Kenntnis der Containergröße ist hilfreich für die Verwaltung von Speicherplatz.

Standardmäßig zeigt docker ps die Containergröße nicht an. Um Größeninformationen einzublenden, können Sie das --size-Flag verwenden.

docker ps -a --size

Dieser Befehl listet alle Container (laufende und beendete) auf und fügt zwei größenbezogene Spalten hinzu: SIZE (Größe der beschreibbaren Container-Ebene) und VIRTUAL SIZE (Gesamtgröße des Containers inklusive Image-Ebenen).

Manchmal entspricht das Standardausgabeformat von docker ps nicht Ihren Anforderungen. Sie können die Ausgabe mit dem --format-Flag formatieren. Dieses Flag erwartet eine Go-Template-Zeichenkette.

Beispielsweise können Sie mit folgendem Befehl nur die Container-ID, den Imagenamen und den Status anzeigen:

docker ps -a --format "{{.ID}}\t{{.Image}}\t{{.Status}}"

In dieser Formatierungszeichenkette:

  • {{.ID}} bezieht sich auf die Container-ID
  • {{.Image}} bezieht sich auf den Imagenamen
  • {{.Status}} bezieht sich auf den Containerstatus
  • \t wird als Tabulatorzeichen zur Spaltentrennung verwendet

Sie können auch Größeninformationen in die formatierte Ausgabe aufnehmen:

docker ps -a --format "{{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Size}}"

Dieser Befehl zeigt die Container-ID, das Image, den Status und die Größe an. Das Feld {{.Size}} enthält sowohl die Größe der beschreibbaren Ebene als auch die virtuelle Größe.

Experimentieren Sie mit verschiedenen Feldern in der Formatierungszeichenkette, um die Ausgabe nach Ihren Bedürfnissen anzupassen. Weitere nützliche Felder sind {{.Names}}, {{.CreatedAt}} und {{.Ports}}.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie den Befehl docker ps verwenden, um Docker-Container aufzulisten. Sie begannen damit, nur laufende Container mit docker ps anzuzeigen, nachdem Sie zuvor einen einfachen ubuntu-Container im Detached-Modus gestartet hatten. Anschließend haben Sie gelernt, wie Sie alle Container einschließlich beendeter anzeigen können, indem Sie das -a-Flag zum docker ps-Befehl hinzufügen, nachdem Sie den zuvor erstellten Container gestoppt hatten.