默认创建的网络模式
启动docker后,我们使用一下命令查看网络模式
docker network ls
我们发现了他默认创建了三种网络模式bridge
、host
、none
,除此之外还有一个网络模式为容器模式
网络模式
bridge模式
Docker 服务默认会创建一个 docker0 网桥(其上有一个 docker0 内部接口),该桥接网络的名称为docker0,它在内核层连通了其他的物理或虚拟网卡,这就将所有容器和本地主机都放到同一个物理网络。Docker 默认指定了 docker0 接口 的 IP 地址和子网掩码,让主机和容器之间可以通过网桥相互通信
查看详细信息
这里通过grep获取了名字
docker network inspect bridge | grep name
- 在当前模式下,他会为每一个容器分配、设置IP等,并将容器连接到一个
docker0
的虚拟网桥 - 默认为该模式
host模式
在当前的网络模式下,容器不会虚拟出自己的网卡、配置自己的ip等,而是使用宿主机的IP和端口
none 模式
在当前模式下,容器拥有独立的Network namespace,但并没有对其进行任何的网络设置,如分配veth pair 和网桥链接,IP等
container模式
新创建的容器不会创建自己的网卡和配置自己的IP,而是和一个指定的容器共享IP、端口范围等
会抽出时间详细介绍一下这几个网络模式