Tipps zur Verwendung des Befehls „Docker Inspect“

Tipps zur Verwendung des Befehls „Docker Inspect“

Beschreibung und Einführung

Docker Inspect ist ein nativer Befehl des Docker-Clients, der zum Anzeigen der zugrunde liegenden Basisinformationen von Docker-Objekten verwendet wird. Einschließlich Container-ID, Erstellungszeit, Laufstatus, Startparameter, Verzeichniseinbindung, Netzwerkkonfiguration usw. Darüber hinaus können mit diesem Befehl auch die Informationen des Docker-Image angezeigt werden.

Die offizielle Beschreibung lautet wie folgt:

Gibt Low-Level-Informationen zu Docker-Objekten zurück

Grammatik

Die Syntax lautet wie folgt:

Docker-Inspektion [OPTIONEN] NAME|ID [NAME|ID…]

OPTIONEN

Die folgende Tabelle stammt von der offiziellen Website

Name, Abkürzung Standard Beschreibung
--format , -f Formatieren Sie die Ausgabe mit der angegebenen Go-Vorlage
--size , -s Gesamtdateigrößen anzeigen, wenn der Typ Container ist
--Typ Gibt JSON für den angegebenen Typ zurück

Wie in der obigen Tabelle gezeigt, wird --type verwendet, um den Docker-Objekttyp anzugeben, beispielsweise Container oder Image. Dies kann verwendet werden, wenn der Container und das Image denselben Namen haben und wird seltener verwendet. Wenn beispielsweise ein Container auf Ihrem Computer den Namen „Redis“ und ein Image „Redis:latest“ hat, können Sie mit dem folgenden Befehl die Image-Informationen anzeigen. Wenn der Typparameter nicht verwendet wird, werden Containerinformationen zurückgegeben:

# Redis anzeigen: Neueste Bildinformationen docker inspect --type=image redis

# Informationen zum Redis-Container anzeigen docker inspect redis

--size wird verwendet, um die Dateigröße des Containers anzuzeigen. Mit diesem Parameter enthält die Ausgabe SizeRootFs und SizeRw (ich bin mir noch nicht sicher, was diese beiden Werte bedeuten, und hoffe, dass mir jemand, der Bescheid weiß, Bescheid geben kann).

Die beiden oben genannten Parameter werden selten verwendet. --format ist am praktischsten und wird häufiger verwendet. Aus der Tabellenbeschreibung können wir erkennen, dass der übergebene Parameterwert eine Vorlage in der Sprache Go sein sollte. Es ist sehr leistungsstark und kann viele Operationen von Go-Funktionen ausführen. Da ich noch nicht mit der Sprache Go angefangen habe, werde ich hier nicht zu viel über ihre Akrobatik sprechen, um Fehler zu vermeiden. Lassen Sie mich unten über die am häufigsten verwendeten sprechen.

üben

In der Praxis müssen wir oft nur einen Teil der Informationen anzeigen, beispielsweise Informationen zur Verzeichnisbereitstellung und Netzwerkinformationen. Wenn wir den Docker-Inspect-Container direkt aufrufen, werden sämtliche Informationen des Containers ausgegeben. Dies erscheint aufgebläht und macht es uns unbequem, in der Befehlszeile zu blättern. An dieser Stelle wird die Praktikabilität von --format reflektiert. In der Praxis übliche Operationen sind wie folgt

Informationen zur Verzeichnisbereitstellung anzeigen

Geben Sie den folgenden Befehl ein, um die Mount-Informationen des Containers auszugeben. Anschließend können Sie die spezifischen Mount-Speicherorte der einzelnen Verzeichnisse im Container auf dem Hostcomputer anzeigen.

docker inspect --format="{{json .Mounts}}" Container

Das JSON im Parameter ist der Methodenname der Sprache Go, gefolgt vom in JSON konvertierten Wert von Mounts. Es ist auch möglich, JSON zu entfernen.
Wenn Sie meinen, dass diese Eingabe immer noch nicht besonders schön ist, können Sie das JSON weiter verarbeiten, z. B. mit dem JSON-Modul von Python oder mit jq, um die Ausgabe zu verschönern. Der Befehl lautet wie folgt:

#Verwenden Sie das JSON-Modul von Python, um den Container „docker inspect --format="{{json .Mounts}}"“ zu verschönern | python -m json.tool

#Verwenden Sie jq, um den Container docker inspect --format="{{json .Mounts}}" zu verschönern | jq

Container-Netzwerkinformationen anzeigen

Um Netzwerkinformationen anzuzeigen, können Sie den folgenden Befehl verwenden:

#Vollständige Netzwerkinformationen anzeigen docker inspect --format="{{json .NetworkSettings}}" container | jq

#Netzwerk-Port-Zuordnung anzeigen docker inspect --format="{{json .NetworkSettings.Ports}}" container | jq

# Netzwerk-IP, Gateway und andere Informationen des Containers anzeigen docker inspect --format="{{json .NetworkSettings.Networks}}" container | jq

Erweitertes Lernen

Wenn Sie interessiert sind, können Sie diesen --format-Parameter auch voll ausnutzen, da es sich um die Vorlagensyntax von Go handelt, mit der fast Go-Code geschrieben werden kann. Im obigen Befehl ist „json“ beispielsweise der Methodenname von „go“.

Daher können Sie andere Go-Methoden (wie Bereich, Split) kombinieren, um Akrobatik auszuführen, aber dieser Artikel zeigt Ihnen nicht, wie das geht.

Verweise
Offizielle Docker-Dokumentation

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Installation von Docker und der Ausführung von Befehlen unter CentOS 7
  • Sammlung von Docker-Bereinigungsbefehlen
  • Detaillierte Erklärung zur Verwendung des Docker-Befehls „run“
  • Zusammenfassung der in Docker häufig verwendeten Befehle zum Löschen von Container-Images
  • Muss Docker nach dem Ändern von Dateien neu gestartet werden (Befehlsdetails)
  • Docker-Grundlagen: Detaillierte Erklärung der Dockerfile-Befehle
  • Detaillierte Erläuterung des Docker-Service-Befehls (Zusammenfassung)
  • Zusammenfassung gängiger Befehle in Dockerfile
  • Zusammenfassung der gängigen Docker-Befehle (praktische Version)
  • Lösung für das Problem, dass Befehle während des Docker-Tests nicht abgeschlossen werden können
  • Allgemeine Befehlsvorgangsmethode von Docker

<<:  Das WeChat-Applet implementiert einen einfachen Rechner

>>:  15 wichtige Variablen, die Sie zur MySQL-Leistungsoptimierung kennen müssen (Zusammenfassung)

Artikel empfehlen

Keep-Alive-Multilevel-Routing-Cache-Problem in Vue

Inhaltsverzeichnis 1. Problembeschreibung 2. Ursa...

Detaillierte Erläuterung der Vue-Projektverpackung

Inhaltsverzeichnis 1. Zugehörige Konfiguration Fa...

Tutorial zur Optimierung der Installationskonfiguration von MySQL 8.0.18

Die Installation, Konfiguration und Optimierung v...

Hinweise zu Fallstricken bei Vuex und Pinia in Vue3

Inhaltsverzeichnis einführen Installation und Ver...

5 Möglichkeiten, Docker-Container auf andere Server zu migrieren

Migration ist in vielen Fällen unvermeidlich. Har...

HTML als Startseite festlegen und zu Favoriten hinzufügen_Powernode Java Academy

So implementieren Sie die Funktionen „Als Startse...

Mysql Workbench - Abfragemethode für MySQL-Datenbanken

Mysql Workbench ist ein Open-Source-Datenbankclie...

Freundliche Alternativen zum Find Tool in Linux

Mit dem Befehl „Find“ können Sie in einem angegeb...

Kurze Analyse der Einführung und grundlegenden Verwendung von Promise

Promise ist eine neue Lösung für die asynchrone P...

JavaScript imitiert den Jingdong-Karusselleffekt

In diesem Artikel wird der spezifische Code für J...