1.什么是Docker网络?
安装Docker时,它会自动创建三个网络,bridge(创建容器默认连接到此网络)、 none 、host
2.原生网络
当你安装完Docker时,它会自动创建三个网络。你可以使用以下docker network ls命令列出这些网络
Docker内置这三个网络,运行容器时,你可以使用该–network标志来指定容器应连接到哪些网络
该bridge网络代表docker0所有Docker安装中存在的网络(默认使用桥接)
除非你使用该docker run --network=选项指定,否则Docker守护程序默认将容器连接到此网络
清理实验环境:
在使用docker run创建Docker容器时,可以用 --net 选项指定容器的网络模式,Docker可以有以下4种网络模式
host模式:使用 --net=host 指定。
none模式:使用 --net=none 指定。
bridge模式:使用 --net=bridge 指定,默认设置。
container模式:使用 --net=container:NAME_or_ID 指定。
2.1 Bridge模式
相当于Vmware中的Nat模式,容器使用独立network Namespace,并连接到docker0虚拟网卡(默认模式)
通过docker0网桥以及Iptables nat表配置与宿主机通信;bridge模式是Docker默认的网络设置
此模式会为每一个容器分配Network Namespace、设置IP等,并将一个主机上的Docker容器连接到一个虚拟网桥上。
(1)Bridge模式的拓扑
当Docker server启动时,会在主机上创建一个名为docker0的虚拟网桥,此主机上启动的Docker容器会连接到这个虚拟网桥上。
虚拟网桥的工作方式和物理交换机类似,这样主机上的所有容器就通过交换机连在了一个二层网络中。