Denne artikkelen vil utdype hva “-nett = vert”Alternativet gjør i Docker -kommandoen.
Hva gjør alternativet “-Net = Host” i Docker-kommandoen?
“-nett”Alternativ i“Docker Run”Kommando brukes til å spesifisere nettverket for Docker -beholderen. Som standard kjører containere på bronettet. Imidlertid "-nett = vert”Alternativet kan brukes til å utføre beholderen på vertsnettverket. Det gir Docker -containeren mer nettverkstilgang enn den vanligvis ville ha.
Hvordan du utfører "docker run" -kommandoen med og uten alternativet "-net = vert"?
For å sjekke forskjellen mellom containere som kjører på standardnettverket og vertsnettverket, se på de listede eksemplene:
Hvordan bruke "Docker Run" -kommandoen uten alternativet "-Net-host"?
Som standard gir Docker -plattformen tre nettverk: “bro”,“vert”, Og“ingen”. For å liste opp alle nettverk, ta en titt på eksemplet nedenfor:
> Docker Network LS
Når containeren utføres uten å spesifisere noe nettverk, vil den som standard bruke Bridge Networking. For demonstrasjonen, sjekk ut trinnene nedenfor.
Trinn 1: Lag en Dockerfile
Lag en Dockerfile for å containerisere “Golang”Programmer og lim inn de gitte instruksjonene i filen:
Fra Golang: 1.8
Workdir/go/src/app
Kopier Main.gå .
Run Go Build -o Webserver .
Utsett 8080: 8080
Cmd ["./Internett server"]
Trinn 2: Bygg Docker -bilde
Deretter genererer du bildet fra Dockerfile ved hjelp av den oppgitte kommandoen. “-t”Alternativ i kommandoen nedenfor spesifiserer bildetavnet:
> docker build -t go -img .
Trinn 3: Utfør Docker -beholderen
Bruk “Docker Run”Kommando for å kjøre beholderen på det valgte nettverket. “-d”Alternativet utfører beholderen i løsrevet modus:
> docker run -d go -img
Liste nå beholderen og sjekk om beholderen er utført på standardnettverket eller ikke:
> docker ps -a
Hvis utgangen viser noen eksponeringsport som "TCP/”Det betyr at containeren kjører på et standardnettverk, og hvis det ikke er noen utgang i"Porter”Kolonne eller utgang som“0.0.0.0: 8080 → 8080/TCP”Det betyr at beholderen kjører på verten:
Fra output ovenfor kan du se at containeren vår utfører på standard valgt nettverk "bro”.
Hvordan bruke "Docker Run" -kommandoen med alternativet "-Net-host"?
For å utføre beholderen på vertsnettverket, bruk "-nett = vert”Alternativ som vist nedenfor:
> Docker Run -D --Net = Vert Go -IMG
For verifiseringen, liste ned alle containerne. Her vises ingen utgang i "Porter”Kolonne, som betyr at containeren vår behandler på vertsnettverket og kan nås i en hvilken som helst port i vertsnettverket:
> docker ps -a
Dette handler om hva “-nett = vert”Alternativet gjør og hvordan du bruker det i Docker.
Konklusjon
“-nett = vert”Alternativet brukes til å utføre Docker -beholderen på vertsnettverket. Hvis dette alternativet ikke er spesifisert i "Docker Run”Kommando, dens gjennomsnittlige beholder vil utføre på bronettet. For å kjøre beholderen på verten, bruk "Docker Run -Net = alternativ ”Kommando. Denne oppskrivningen har demonstrert hva “-nett = vert”Alternativet gjør i Docker -kommandoen.