Šajā rakstā tiks sīkāk aprakstīts, kas –net=host ” opcija darbojas komandā Docker.
Ko Docker komandā dara opcija “–net=host”?
' -tīkls ' opcija sadaļā ' dokera skrējiens ” komanda tiek izmantota, lai norādītu Docker konteinera tīklu. Pēc noklusējuma konteineri darbojas tilta tīklā. Tomēr ' –net=host ” opciju var izmantot, lai izpildītu konteineru resursdatora tīklā. Tas Docker konteineram nodrošina lielāku piekļuvi tīklam, nekā tas parasti būtu.
Kā izpildīt komandu “docker run” ar un bez opcijas “–net=host”?
Lai pārbaudītu atšķirību starp konteineriem, kas darbojas noklusējuma tīklā un resursdatora tīklā, skatiet tālāk norādītos piemērus.
- Izmantojiet ' dokera skrējiens 'Komanda bez' – tīkla resursdators ” Opcija.
- Izmantojiet ' dokera skrējiens 'Komanda ar' – tīkla resursdators ” Opcija.
Kā izmantot komandu “docker run” bez opcijas “–net-host”?
Pēc noklusējuma Docker platforma nodrošina trīs tīklus: ' tilts ”, “ saimnieks ', un ' neviens ”. Lai uzskaitītu visus tīklus, apskatiet tālāk redzamo piemēru:
> doku tīkls ls
Ja konteiners tiek izpildīts, nenorādot nevienu tīklu, pēc noklusējuma tas izmantos tilta tīklu. Demonstrācijai pārbaudiet tālāk norādītās darbības.
1. darbība: izveidojiet Docker failu
Izveidojiet Docker failu, lai konteinerizētu ' golang ” programmu un ielīmējiet dotās instrukcijas failā:
NO golanga: 1.8
DARBA DIREKTĪVĀ / aiziet / src / lietotne
KOPĒT main.go .
RUN ej būvēt -O tīmekļa serveris.
ATKLĀJOT 8080 : 8080
CMD [ './webserver' ]
2. darbība: izveidojiet Docker attēlu
Pēc tam ģenerējiet attēlu no Dockerfile, izmantojot sniegto komandu. ' -t ” opcija zemāk esošajā komandā norāda attēla nosaukumu:
> dokera uzbūve -t go-img .
3. darbība: izpildiet Docker konteineru
Izmantojiet ' dokera skrējiens ” komandu, lai palaistu konteineru noklusējuma atlasītajā tīklā. ' -d Opcija izpilda konteineru atdalītā režīmā:
> dokera skrējiens -d go-img
Tagad izveidojiet konteinera sarakstu un pārbaudiet, vai konteiners tiek izpildīts noklusējuma tīklā vai nē:
> dokeris ps -a Ja izvade parāda jebkuru atklātu portu, piemēram, ' tcp/
No iepriekš redzamās izvades varat redzēt, ka mūsu konteiners tiek izpildīts noklusējuma atlasītajā tīklā ' tilts ”.
Kā izmantot komandu “docker run” ar opciju “–net-host”?
Lai izpildītu konteineru resursdatora tīklā, izmantojiet “ –net=host ” opcija, kā parādīts zemāk:
> dokera skrējiens -d --tīkls =host go-img
Lai veiktu pārbaudi, uzskaitiet visus konteinerus. Šeit neviena izvade netiek parādīta ' ostas ” kolonna, kas nozīmē, ka mūsu konteiners tiek apstrādāts resursdatora tīklā un tam var piekļūt jebkurā resursdatora tīkla ostā:
> dokeris ps -a
Tas viss ir par to, ko ' –net=host ” un kā to izmantot programmā Docker.
Secinājums
' –net=host Opcija tiek izmantota, lai izpildītu Docker konteineru resursdatora tīklā. Ja šī opcija nav norādīta sadaļā “ dokera skrējiens ” komandu, tās vidējais konteiners tiks izpildīts tilta tīklā. Lai resursdatorā palaistu konteineru, izmantojiet “ docker palaist –net=opcija