Docker-stats-Befehl

Docker-Befehlsreferenz


docker statsDer Befehl wird verwendet, um die Echtzeit-Ressourcennutzung von Docker-Containern anzuzeigen, einschließlich CPU, Arbeitsspeicher, Netzwerk-I/O und Block-I/O.

docker statsÄhnlich wie der in Linux-SystementopBefehl, aber er ist speziell auf Docker-Container ausgerichtet. Durchdocker stats, können Benutzer die Ressourcennutzung von Containern überwachen, was hilft, die Leistung zu optimieren und Probleme zu beheben.

Syntax

docker stats [OPTIONS] [CONTAINER...]

OPTIONS-Beschreibung:

  • --all , -a :Alle Container anzeigen, einschließlich der nicht laufenden Container.

  • --format :Vorlagendatei, die den Rückgabewert angibt.

  • --no-stream :Zeigt den aktuellen Status an und beendet sich dann sofort, ohne weiter in Echtzeit zu aktualisieren.

  • --no-trunc :Ausgabe nicht abschneiden.

Ressourcennutzung aller laufenden Container anzeigen:

docker stats

Ressourcennutzung eines angegebenen Containers anzeigen:

docker stats my_container

Ressourcennutzung aller Container anzeigen (einschließlich nicht laufender Container):

docker stats --all

Daten nur einmal anzeigen, anstatt kontinuierlich zu aktualisieren:

docker stats --no-stream

Ausgabe mit einem benutzerdefinierten Format:

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Beispiel

Informationen zu allen laufenden Containern auflisten.

example@example:~$  docker stats
CONTAINER ID        NAME                                    CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain                        0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar                                  0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2
e5c383697914        test-1951.1.kay7x1lh1twk9c0oig50sd5tr   0.00%               196KiB / 1.952GiB     0.01%               71.2kB / 0B         770kB / 0B          1
4bda148efbc0        random.1.vnc8on831idyr42slu578u3cr      0.00%               1.672MiB / 1.952GiB   0.08%               110kB / 0B          578kB / 0B          2

Detaillierte Einführung zur Ausgabe:

CONTAINER ID und NAME:Container-ID und Name.

CPU % und MEM %:Der Prozentsatz an CPU und Arbeitsspeicher, den der Container verwendet.

MEM USAGE / LIMIT:Der Gesamtspeicher, den der Container verwendet, sowie der Gesamtspeicher, den er verwenden darf.

NET I/O:Die Datenmenge, die der Container über seine Netzwerkschnittstelle sendet und empfängt.

BLOCK I/O:Die Datenmenge, die der Container von Blockgeräten auf dem Host liest und auf diese schreibt.

PIDs:Anzahl der Prozesse oder Threads, die vom Container erstellt werden.

Informationen anhand der Container-ID oder des Namens anzeigen:

example@example:~$ docker stats awesome_brattain 67b2525d8ad1

CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain    0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar              0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2

Ausgabe im JSON-Format:

example@example:~$ docker stats nginx --no-stream --format "{{ json . }}"
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

Angegebene Informationen ausgeben:

example@example:~$ docker stats --all --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}" fervent_panini 5acfcb1b4fd1 drunk_visvesvaraya big_heisenberg
  {"BlockIO":"0B / 13.3kB","CPUPerc":"0.03%","Container":"nginx","ID":"ed37317fbf42","MemPerc":"0.24%","MemUsage":"2.352MiB / 982.5MiB","Name":"nginx","NetIO":"539kB / 606kB","PIDs":"2"}

CONTAINER                CPU %               MEM USAGE / LIMIT
fervent_panini           0.00%               56KiB / 15.57GiB
5acfcb1b4fd1             0.07%               32.86MiB / 15.57GiB
drunk_visvesvaraya       0.00%               0B / 0B
big_heisenberg           0.00%               0B / 0B

Häufige Szenarien

  • Echtzeitüberwachung: Container-Ressourcennutzung in Echtzeit anzeigen für Leistungsüberwachung und -optimierung.
  • Fehlerbehebung: Wenn Probleme in Containern auftreten, die Ressourcennutzung überprüfen, um die Grundursache zu identifizieren.
  • Ressourcenverwaltung: Die Container-Ressourcennutzung überwachen, um eine angemessene Ressourcenzuweisung sicherzustellen und Ressourcenverschwendung oder Engpässe zu vermeiden.

docker statsDer Befehl ist ein leistungsstarkes Werkzeug zur Echtzeitüberwachung der Ressourcennutzung von Docker-Containern. Mit diesem Befehl können Benutzer detaillierte Informationen über CPU, Speicher, Netzwerk-I/O und Block-I/O von Containern abrufen, was bei der Leistungsoptimierung, Fehlerbehebung und Ressourcenverwaltung hilft.


Docker-Befehlsreferenz

Weitere Erweiterungen