宿主機與容器可以ping通實踐

baidu_40245966發表於2020-11-13

實驗來自於:https://training.play-with-docker.com/docker-networking-hol/

檢視網路

docker network ls

在這裡插入圖片描述

列出網路驅動外掛

docker infol
在這裡插入圖片描述

安裝brctl

sudo apt-get install bridge-utils
brctl show檢視主機與docker之間的網橋:預設都是docker0
在這裡插入圖片描述

Run一個 容器ubuntu

docker run -dt ubuntu sleep infinity
在這裡插入圖片描述

重新命名為ubuntu-test1,並且檢視這個容器的網橋

docker runame 容器id ubuntu-test1
docker ps

在這裡插入圖片描述

#檢視網橋,是否與ubuntu-test1連線
docker network inspect bridge

在這裡插入圖片描述
在這裡插入圖片描述

測試網路

在宿主機下ping 上圖中ubuntu-test1的ip,是否宿主機和容器ubuntu-test1連線成功
在這裡插入圖片描述
同時宿主機ping ,github網站是否聯網
在這裡插入圖片描述

可以docker exec 進入這個容器內ping docker0的網段,是可以ping通的

再進入容器後,要先安裝使用ping的工具

apt-get update && apt-get install -y iputils-ping

這一步就可以看出容器ubuntu-test1是聯網的

實驗結束網路模式知識學習

bridge模式:Docker的預設模式,它會在docker容器啟動時候,自動配置好自己的網路資訊,同一宿主機的所有容器都在一個網路下,彼此間可以通訊。

host模式: 容器使用宿主機的ip地址進行通訊。特點:容器和宿主機共享網路

container模式: 新建立的容器間使用,使用已建立的容器網路,類似一個區域網。 特點:容器和容器共享網路

none模式:不會做任何網路的配置,可以最大限度的定製化。 不提供網路服務,容器啟動後無網路連線。

相關文章