Was bewirkt die Option „–net=host“ im Docker-Befehl wirklich?

Was Bewirkt Die Option Net Host Im Docker Befehl Wirklich



Docker ist ein etabliertes Open-Source-Forum, das häufig zum Erstellen, Ausführen und Verteilen von Anwendungen in Containern verwendet wird. Die Container sind ausführbare Pakete, die die Anwendungsabhängigkeiten und den Code kapseln. Um die containerisierte Anwendung bereitzustellen, können Sie diese Container in verschiedenen Netzwerken ausführen, z. B. Host-, Bridge- oder benutzerdefinierten Netzwerken.

In diesem Artikel wird erläutert, was die „ –net=Host “-Option im Docker-Befehl.

Was bewirkt die Option „–net=host“ im Docker-Befehl?

Der ' -Netz ”-Option in der “ Docker laufen “-Befehl wird verwendet, um das Netzwerk für den Docker-Container anzugeben. Standardmäßig werden Container im Bridge-Netzwerk ausgeführt. Allerdings ist die „ –net=Host “-Option kann verwendet werden, um den Container im Host-Netzwerk auszuführen. Es gibt dem Docker-Container mehr Netzwerkzugriff, als er normalerweise hätte.







Wie führe ich den Befehl „docker run“ mit und ohne die Option „–net=host“ aus?

Sehen Sie sich die aufgeführten Beispiele an, um den Unterschied zwischen Containern zu überprüfen, die im Standardnetzwerk und im Hostnetzwerk ausgeführt werden:



Wie verwende ich den Befehl „docker run“ ohne die Option „–net-host“?

Standardmäßig stellt die Docker-Plattform drei Netzwerke bereit: „ Brücke “, „ Gastgeber ', Und ' keiner “. Um alle Netzwerke aufzulisten, sehen Sie sich das folgende Beispiel an:



> Docker-Netzwerk ls





Wenn der Container ohne Angabe eines Netzwerks ausgeführt wird, verwendet er standardmäßig Bridge-Netzwerke. Sehen Sie sich für die Demonstration die folgenden Schritte an.

Schritt 1: Dockerfile erstellen

Erstellen Sie eine Docker-Datei, um die „ gehen “ programmieren und die angegebenen Anweisungen in die Datei einfügen:



VON golang: 1.8

ARBEITSVERZ / gehen / Quelle / App

KOPIEREN main.go .

LAUFEN, los bauen Webserver .

EXPONIEREN 8080 : 8080

CMD [ './webserver' ]

Schritt 2: Docker-Image erstellen

Als nächstes generieren Sie das Image aus Dockerfile mit Hilfe des bereitgestellten Befehls. Der ' -T ” Option im folgenden Befehl gibt den Bildnamen an:

> Docker-Build -T go-img .

Schritt 3: Führen Sie den Docker-Container aus

Nutzen Sie die „ Docker laufen “, um den Container im standardmäßig ausgewählten Netzwerk auszuführen. Der ' -D ” Option führt den Container im getrennten Modus aus:

> Docker laufen -D go-img

Listen Sie nun den Container auf und prüfen Sie, ob der Container im Standardnetzwerk ausgeführt wird oder nicht:

> Docker p.s -A

Wenn die Ausgabe einen exponierten Port wie „ TCP/ “ bedeutet dies, dass der Container in einem Standardnetzwerk ausgeführt wird und wenn keine Ausgabe in „ Häfen ” Spalte oder Ausgabe wie “ 0.0.0.0:8080→8080/tcp ” bedeutet dies, dass der Container auf dem Host ausgeführt wird:

Aus der obigen Ausgabe können Sie sehen, dass unser Container auf dem standardmäßig ausgewählten Netzwerk ausgeführt wird. Brücke “.

Wie verwende ich den Befehl „docker run“ mit der Option „–net-host“?

Um den Container im Hostnetzwerk auszuführen, verwenden Sie die „ –net=Host “-Option wie unten gezeigt:

> Docker laufen -D --Netz =host go-img

Listen Sie für die Überprüfung alle Container auf. Hier wird keine Ausgabe im „ Häfen ”-Spalte, was bedeutet, dass unser Container im Host-Netzwerk verarbeitet wird und auf jeden Port des Host-Netzwerks zugegriffen werden kann:

> Docker p.s -A

Hier geht es um das „ –net=Host ” Option tut und wie man sie in Docker verwendet.

Abschluss

Der ' –net=Host “-Option wird verwendet, um den Docker-Container im Host-Netzwerk auszuführen. Wenn diese Option nicht im „ Docker laufen ”-Befehl, wird sein mittlerer Container auf dem Bridge-Netzwerk ausgeführt. Um den Container auf dem Host auszuführen, verwenden Sie die „ docker run –net=option ' Befehl. Diese Zuschreibung hat gezeigt, was die „ –net=Host “-Option im Docker-Befehl.