Wie man den Befehl docker network ls verwendet, um Netzwerke aufzulisten und zu filtern

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 network ls effektiv nutzen können, um Docker-Netzwerke aufzulisten und zu filtern. Sie beginnen damit, alle verfügbaren Netzwerke aufzulisten und erkunden dann, wie Sie vollständige Netzwerk-IDs mit der Option --no-trunc anzeigen können.

Darüber hinaus üben Sie das Filtern von Netzwerken anhand verschiedener Kriterien wie Treiber (driver), Name, Bereich (scope) und Typ. Abschließend lernen Sie, wie Sie die Ausgabe des Befehls docker network ls mithilfe einer Vorlage (template) für eine benutzerdefinierte Anzeige formatieren können. In diesem Lab erwerben Sie die wesentlichen Fähigkeiten, um Docker-Netzwerke über die Befehlszeile zu verwalten und zu untersuchen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/NetworkOperationsGroup(["Network Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/NetworkOperationsGroup -.-> docker/network("Manage Networks") subgraph Lab Skills docker/ls -.-> lab-555177{{"Wie man den Befehl docker network ls verwendet, um Netzwerke aufzulisten und zu filtern"}} docker/network -.-> lab-555177{{"Wie man den Befehl docker network ls verwendet, um Netzwerke aufzulisten und zu filtern"}} end

Auflisten aller Docker-Netzwerke

In diesem Schritt lernen Sie, wie Sie alle auf Ihrem System verfügbaren Docker-Netzwerke auflisten können. Docker-Netzwerke sind essentiell für die Kommunikation zwischen Containern und mit der Außenwelt. Standardmäßig erstellt Docker drei Netzwerke: bridge, host und none.

Um alle Docker-Netzwerke aufzulisten, verwenden Sie den Befehl docker network ls. Dieser Befehl liefert eine Liste der Netzwerke, einschließlich ihrer ID, ihres Namens, des Treibers (driver) und des Bereichs (scope).

Lassen Sie uns den Befehl ausführen, um die verfügbaren Netzwerke anzuzeigen.

docker network ls

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

NETWORK ID     NAME      DRIVER    SCOPE
b432a7b0f123   bridge    bridge    local
f567c8d1e234   host      host      local
a987b6c5d4e3   none      null      local

Die Ausgabe zeigt die Standard-Netzwerke. Die NETWORK ID ist ein eindeutiger Bezeichner für das Netzwerk. Der NAME ist der Name des Netzwerks. Der DRIVER ist der Netzwerktreiber, der von dem Netzwerk verwendet wird (z. B. bridge, host, null). Der SCOPE gibt an, wo das Netzwerk verfügbar ist (z. B. local).

Auflisten von Netzwerken ohne Kürzung der ID

Im vorherigen Schritt haben Sie Docker-Netzwerke aufgelistet und bemerkt, dass die NETWORK ID gekürzt ist. Dies ist das Standardverhalten, um die Ausgabe kompakt zu halten. Manchmal benötigen Sie jedoch die vollständige Netzwerk-ID, beispielsweise wenn Sie in anderen Docker-Befehlen auf ein bestimmtes Netzwerk verweisen.

Um die vollständige Netzwerk-ID anzuzeigen, können Sie die Option --no-trunc mit dem Befehl docker network ls verwenden.

Lassen Sie uns diesen Befehl ausprobieren, um die vollständigen Netzwerk-IDs anzuzeigen.

docker network ls --no-trunc

Die Ausgabe zeigt nun die vollständigen Netzwerk-IDs:

NETWORK ID                                                       NAME      DRIVER    SCOPE
b432a7b0f1234567890abcdef1234567890abcdef1234567890abcdef12345678 bridge    bridge    local
f567c8d1e234567890abcdef1234567890abcdef1234567890abcdef12345678 host      host      local
a987b6c5d4e3210fedcba9876543210fedcba9876543210fedcba9876543210fed none      null      local

Wie Sie sehen können, zeigt die Spalte NETWORK ID jetzt die vollständigen, ungekürzten IDs an. Dies ist nützlich, wenn Sie die vollständige ID kopieren und einfügen müssen, um weitere Operationen auszuführen.

Filtern von Netzwerken nach Treiber (driver)

In diesem Schritt lernen Sie, wie Sie die Liste der Docker-Netzwerke anhand ihres Treibers (driver) filtern können. Dies ist nützlich, wenn Sie nur Netzwerke anzeigen möchten, die einen bestimmten Treiber verwenden, wie z. B. bridge oder host.

Sie können die Option --filter mit dem Befehl docker network ls verwenden, um die Ausgabe zu filtern. Die Filter-Syntax lautet key=value. Um nach Treiber zu filtern, verwenden Sie den Schlüssel driver.

Lassen Sie uns die Netzwerke filtern, um nur diejenigen anzuzeigen, die den bridge-Treiber verwenden.

docker network ls --filter driver=bridge

Die Ausgabe zeigt nun nur Netzwerke mit dem bridge-Treiber:

NETWORK ID     NAME      DRIVER    SCOPE
b432a7b0f123   bridge    bridge    local

Jetzt filtern wir die Netzwerke, um nur diejenigen anzuzeigen, die den host-Treiber verwenden.

docker network ls --filter driver=host

Die Ausgabe zeigt nun nur Netzwerke mit dem host-Treiber:

NETWORK ID     NAME      DRIVER    SCOPE
f567c8d1e234   host      host      local

Sie können diese Filterfunktion nutzen, um schnell Netzwerke anhand ihrer zugrunde liegenden Technologie zu finden.

Filtern von Netzwerken nach Name

In diesem Schritt lernen Sie, wie Sie die Liste der Docker-Netzwerke anhand ihres Namens filtern können. Dies ist nützlich, wenn Sie nach einem bestimmten Netzwerk anhand seines Namens suchen.

Ähnlich wie beim Filtern nach Treiber (driver) verwenden Sie die Option --filter mit dem Befehl docker network ls. Um nach Name zu filtern, verwenden Sie den Schlüssel name.

Lassen Sie uns die Netzwerke filtern, um nur das Netzwerk mit dem Namen bridge anzuzeigen.

docker network ls --filter name=bridge

Die Ausgabe zeigt nun nur das Netzwerk mit dem Namen bridge:

NETWORK ID     NAME      DRIVER    SCOPE
b432a7b0f123   bridge    bridge    local

Jetzt filtern wir die Netzwerke, um nur das Netzwerk mit dem Namen host anzuzeigen.

docker network ls --filter name=host

Die Ausgabe zeigt nun nur das Netzwerk mit dem Namen host:

NETWORK ID     NAME      DRIVER    SCOPE
f567c8d1e234   host      host      local

Sie können diesen Filter verwenden, um schnell ein Netzwerk zu finden, wenn Sie seinen Namen kennen.

Filtern von Netzwerken nach Bereich (scope) und Typ

In diesem Schritt lernen Sie, wie Sie die Liste der Docker-Netzwerke anhand ihres Bereichs (scope) und Typs filtern können. Der scope gibt an, wo das Netzwerk verfügbar ist (z. B. local oder swarm), und der type bezieht sich auf den Netzwerk-Treiber (network driver). Obwohl type oft mit driver übereinstimmt, ist es auch möglich, type als Filter-Schlüssel zu verwenden.

Sie können die Option --filter mit dem Befehl docker network ls verwenden, um die Ausgabe zu filtern. Um nach Bereich zu filtern, verwenden Sie den Schlüssel scope. Um nach Typ zu filtern, verwenden Sie den Schlüssel type.

Lassen Sie uns die Netzwerke filtern, um nur diejenigen mit einem local-Bereich anzuzeigen.

docker network ls --filter scope=local

Die Ausgabe zeigt alle Netzwerke mit dem local-Bereich:

NETWORK ID     NAME      DRIVER    SCOPE
b432a7b0f123   bridge    bridge    local
f567c8d1e234   host      host      local
a987b6c5d4e3   none      null      local

Jetzt filtern wir die Netzwerke, um nur diejenigen mit einem bridge-Typ anzuzeigen.

docker network ls --filter type=bridge

Die Ausgabe zeigt Netzwerke mit dem bridge-Typ (was in diesem Fall mit dem bridge-Treiber übereinstimmt):

NETWORK ID     NAME      DRIVER    SCOPE
b432a7b0f123   bridge    bridge    local

Sie können Filter kombinieren, indem Sie die Option --filter mehrmals verwenden. Beispielsweise können Sie nach Netzwerken mit local-Bereich und bridge-Treiber filtern:

docker network ls --filter scope=local --filter driver=bridge

Dies gibt in dieser speziellen Umgebung dasselbe Ergebnis wie das Filtern nach type=bridge zurück, zeigt aber, wie man Filter kombiniert.

Formatieren der Netzwerkausgabe mit einer Vorlage (template)

In diesem Schritt lernen Sie, wie Sie die Ausgabe des Befehls docker network ls mithilfe einer Go-Vorlage (Go template) formatieren können. Dies ist eine leistungsstarke Funktion, die es Ihnen ermöglicht, die Ausgabe anzupassen, um nur die benötigten Informationen in einem bestimmten Format anzuzeigen.

Die Option --format ermöglicht es Ihnen, eine Vorlage anzugeben. Die Vorlage verwendet die Syntax des Go-Pakets text/template. Sie können auf verschiedene Felder des Netzwerkobjekts zugreifen, wie z. B. .ID, .Name, .Driver und .Scope.

Lassen Sie uns die Ausgabe so formatieren, dass nur der Netzwerkname und der Treiber (driver), getrennt durch einen Doppelpunkt, angezeigt werden.

docker network ls --format "{{.Name}}: {{.Driver}}"

Die Ausgabe wird nun gemäß der Vorlage formatiert:

bridge: bridge
host: host
none: null

Sie können auch Überschriften (headers) in Ihrer formatierten Ausgabe einfügen.

docker network ls --format "Network Name\tDriver\n{{.Name}}\t{{.Driver}}"

Die Ausgabe enthält nun Überschriften:

Network Name    Driver
bridge          bridge
host            host
none            null

Das \t erzeugt einen Tabulatorabstand, und \n erzeugt eine neue Zeile. Diese Formatierungsmöglichkeit ist sehr nützlich für Skripterstellung und Berichterstellung.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie den Befehl docker network ls nutzen können, um Docker-Netzwerke aufzulisten. Sie haben zunächst alle verfügbaren Netzwerke aufgelistet und die Standardnetzwerke sowie ihre grundlegenden Informationen (ID, Name, Treiber (driver), Bereich (scope)) beobachtet. Anschließend haben Sie untersucht, wie Sie die vollständige Netzwerk-ID mit der Option --no-trunc anzeigen können, was für die Referenzierung bestimmter Netzwerke nützlich ist.

Darüber hinaus haben Sie das Filtern von Netzwerklisten anhand verschiedener Kriterien geübt. Sie haben gelernt, nach Treiber (driver) mit der Option --filter driver=<driver_name>, nach Netzwerknamen mit --filter name=<network_name> sowie nach Bereich (scope) und Typ mit --filter scope=<scope> und --filter type=<type> zu filtern. Schließlich haben Sie entdeckt, wie Sie die Ausgabe des Befehls docker network ls mit der Option --format und Go-Vorlagen (Go templates) formatieren können, um die angezeigten Informationen anzupassen.