Dieser Artikel wird ausgeht, was das "-net = hostOption hat im Docker -Befehl.
Was macht die Option "-net = host" im Befehl Docker??
Der "-Netz”Option in“Docker RunDer Befehl ”wird verwendet, um das Netzwerk für den Docker -Container anzugeben. Standardmäßig werden Container im Brückennetz ausgeführt. Allerdings das “-net = hostDie Option kann verwendet werden, um den Container im Host -Netzwerk auszuführen. Es gibt dem Docker -Container mehr Netzwerkzugriff als normalerweise.
So führen Sie den Befehl "Docker Run" mit und ohne die Option "-net = host" aus?
Um den Unterschied zwischen Containern, die im Standardnetzwerk und im Host -Netzwerk ausgeführt werden, zu überprüfen, sehen Sie sich die aufgeführten Beispiele an:
So verwenden Sie den Befehl "Docker Run" ohne die Option "-NET-Host"?
Standardmäßig enthält die Docker -Plattform drei Netzwerke: “Brücke","Gastgeber", Und "keiner”. Um alle Netzwerke aufzulisten, schauen Sie sich das folgende Beispiel an:
> Docker -Netzwerk LS
Wenn der Container ohne Angabe eines Netzwerks ausgeführt wird, wird standardmäßig Bridge Networking verwendet. Für die Demonstration finden Sie die folgenden Schritte.
Schritt 1: Machen Sie eine Dockerfile
Machen Sie eine Dockerfile, um die zu containieren “GolangProgrammieren und fügen Sie die angegebenen Anweisungen in die Datei ein:
Von golang: 1.8
WorkDir/Go/SRC/App
Hauptkopie.gehen .
Run Go Build -o -Webserver .
Entdecken Sie 8080: 8080
CMD ["./Webserver "]
Schritt 2: Docker -Bild erstellen
Generieren Sie als nächstes das Bild von Dockerfile mit Hilfe des angegebenen Befehls. Der "-TDie Option im folgenden Befehl gibt den Bildnamen an:
> Docker Build -t Go -Img .
Schritt 3: Führen Sie den Docker -Container aus
Verwenden Sie die “Docker RunBefehl ”, um den Container im Standard -ausgewählten Netzwerk auszuführen. Der "-DDie Option führt den Container im abgetrennten Modus aus:
> Docker Run -d Go -Img
Listen Sie nun den Container auf und überprüfen Sie, ob der Container im Standardnetzwerk ausgeführt wird oder nicht:
> Docker ps -a
Wenn die Ausgabe einen exponierenden Port wie “zeigt“TCP/"Dies bedeutet, dass der Container in einem Standardnetzwerk ausgeführt wird und wenn keine Ausgabe in" vorliegt "HäfenSpalte oder Ausgabe wie “0.0.0.0: 8080 → 8080/TCPEs bedeutet, dass der Container auf Host ausgeführt wird:
Aus der obigen Ausgabe können Sie feststellen, dass unser Container im Standard -ausgewählten Netzwerk ausgeführt wirdBrücke”.
So verwenden Sie den Befehl "Docker Run" mit der Option "-NET-Host"?
Um den Container im Host -Netzwerk auszuführen, verwenden Sie die “-net = hostOption wie unten gezeigt:
> Docker Run -d --net = Host GO -IMG
Für die Überprüfung listen Sie alle Container auf. Hier wird in der “keine Ausgabe angezeigtHäfenSpalte, was bedeutet, dass unser Container im Host -Netzwerk verarbeitet und an jedem Port des Host -Netzwerks zugegriffen werden kann:
> Docker ps -a
Hier geht es darum, was die “-net = hostOption macht und wie man es in Docker verwendet.
Abschluss
Der "-net = hostDie Option wird verwendet, um den Docker -Container im Host -Netzwerk auszuführen. Wenn diese Option in der “nicht angegeben istDocker RunBefehl, sein mittlerer Container wird im Brückennetz ausgeführt. Um den Container auf dem Host auszuführen, verwenden Sie das “Docker run -net = Option " Befehl. Diese Beschreibung hat gezeigt, was die “-net = hostOption hat im Docker -Befehl.