docker支援橋接模式;Docker網路bridge橋接模式是建立和運行容器時預設模式,這種模式會為每個容器分配一個獨立的網卡,橋接到預設或指定的bridge上,同一個Bridge下的容器下可以互相通訊。
本教學操作環境:linux7.3系統、docker-1.13.1版、Dell G3電腦。
Docker安裝時會建立一個名為docker0的虛擬橋接器。除非我們進行另一個的配置,新建立的容器都會自動連接到這個虛擬網橋提供的風格,bridge網路用於同一主機上的docker容器相互通信,連接到同一個網橋的docker容器可以相互通訊。
bridge 對宿主機來講相當於一個單獨的網卡設備 對於運行在宿主機上的每個容器來說相當於一個交換機,所有容器的虛擬網線的一端都連接到docker0。
容器透過本機主機進行上網,容器會建立名為veth的虛擬網卡,網卡一端連接到docker0網橋,另一端連接容器,容器就可以透過網橋透過指派的IP位址進行上網。
我們也可以自訂自己的bridge網絡,docker文件建議使用自訂bridge網絡,
bridge模式實例
##匯入容器並啟動docker load < /share/images/httpd.tar docker run -d --name httpd -p 80:80 httpd驗證
docker exec -it httpd cat /etc/hosts
建立自訂網路
#建立一個自訂網路, 可以指定子網路、IP位址範圍、閘道等網路配置docker network create --driver bridge --subnet 172.22.16.0/24 --gateway 172.22.16.1 mynet2查看docker網絡,是否建立成功。
docker network ls查看自訂網路的細節
brctl show ifconfig docker network inspect mynet2建立容器bb1,連接到自訂網路,並進入容器驗證,可以看到該容器的ip位址為172.22.16.2
docker run --name bb1 -it --network mynet2 busybox:latest ifconfig驗證後我們按Ctrl P後,再按Ctrl Q,從bb1容器退回到主機環境而不關閉容器bb1再建立一個容器bb2,也連接到網路mynet2中
docker run --name bb2 --network mynet2 -it busybox:latest進入容器,訪問bb1容器的ip位址,進行驗證
ping 172.22.16.2會得到如下 類似回應
PING 172.22.16.2 (172.22.16.2): 56 data bytes 64 bytes from 172.22.16.2: seq=0 ttl=64 time=0.439 ms 64 bytes from 172.22.16.2: seq=1 ttl=64 time=0.140 ms 64 bytes from 172.22.16.2: seq=2 ttl=64 time=0.129 ms
總結
#Docker網絡bridge橋接模式,是建立和運作容器時預設模式。這種模式會為每個容器分配一個獨立的網路卡,橋接到預設或指定的bridge上,同一個Bridge下的容器下可以互相通訊的。我們也可以建立自訂bridge以滿足個人化的網路需求。 推薦學習:《docker影片教學》
以上是docker支援橋接模式嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!