docker的網路模式

2022-09-13 10:30:13 字數 1466 閱讀 5246

文章中會通過busybox映象,通過建立不同的網路模式,作出不同的效果:

root@test:~# docker pull busybox

四種網路模式:

· bridge:  --net=bridge

預設網路,docker啟動後預設建立乙個docker網橋,預設模式啟動後,會為容器生成兩張網絡卡:

容器不會獲得乙個獨立的network namespace,而是與宿主機共享,即容器沒有自己的網絡卡資訊,而是使用宿主機的網絡卡,容器除了網路,其他全部隔離

該容器啟動後,檢視到的網絡卡資訊與宿主機相同

獲取獨立的network namespace,但需要手動配置網絡卡資訊

與制定的容器使用同乙個network namespace,具備同樣的網路配置資訊,兩個容器除了網路,其他都是隔離的。

root@test:~# docker run -it --name bs --rm -p 99:80 busybox      ##busybox容器為乙個非常簡單的系統,無任何服務。

root@test:~# docker run --name nginx1 --rm -it --net container:bs nginx    ##busybox容器的80埠對映到nginx

可通過宿主機的99埠,訪問到nginx

· 自定義網路:

具備內部dns發現,可以通過容器名或者主機名容器之間網路通訊

一、建立乙個網路:

root@test:~# docker network create bs_test

二、把需要相互通訊的容器加入到同乙個網路(主機名、ip):

root@test:~# docker run -it --name bs1 --rm --net bs_test ubuntu     

root@test:~# docker run --rm -it --name bs2 --net bs_test ubuntu    

這兩個容器之間可通過ip、主機名、容器名ping通

docker的網路模式

1.查詢網路模式 docker network ls2.docker分為三種網路模式 bridge host和none。bridge為預設docker的網路模式。該模式下每乙個容器擁有自己的ip namespace,容器可以通過宿主機上面docker0網橋與別的容器 宿主機或者外部網路進行通訊。此外...

Docker 網路模式

host 模式並沒有為容器建立乙個隔離的網路環境。該模式下的docker 容器會和host宿主機共享同乙個網路namespace,docker container可以和宿主機一樣,使用宿主機的eth0,實現和外界的通訊。host模式特點包括 容器沒有隔離的 network namespace 容器的...

docker網路模式

我們在使用docker run建立docker容器時,可以用 net選項指定容器的網路模式,docker有以下4種網路模式 host模式,使用 net host指定。container模式,使用 net container name or id指定。none模式,使用 net none指定。brid...