如何给docker容器分配ip地址(docker容器的ip)

如何给docker容器分配ip地址(docker容器的ip)如何给docker容器分配ip地址(docker容器的ip)


如何给docker容器分配ip地址(docker容器的ip)



关于如何给docker容器分配ip地址,docker容器的ip这个很多人还不知道,今天小周来为大家解答以上的问题,现在让我们一起来看看吧!

1、了解 Docker 网络模式,Docker 如何作 iptables 以实现网络端口映射,使用 iptables 控制主机网络流量规则。

2、当 Docker 进程启动时,会在主机上创建一个名为 docker0 的虚拟网桥,此主机上启动的 Docker 容器会连接到这个虚拟网桥上。

3、虚拟网桥的工作方式和物理交换机类似,这样主机上的所有容器就通过交换机连在了一个二层网络中。

4、从 docker0 子网中分配一个 IP 给容器使用,并设置 docker0 的 IP 地址为容器的 默认 。

5、在主机上创建一对虚拟网卡 v pair 设备,Docker 将 v pair 设备的一端放在新创建的容器中,并命名为 0 (容器的网卡),另一端放在主机中,以 vxxx 这样类似的名字命名,并将这个网络设备加入到 docker0 网桥中。

6、 bridge 模式是 docker 的默认网络模式,不写 –net 参数,就是 bridge 模式。

7、使用 docker run -p 时,docker 实际是在 iptables 做了 DNAT 规则,实现端口转发功能。

8、可以使用 iptables -vnL 查看。

9、如果启动容器的时候使用 host 模式,那么这个容器将不会获得一个的 Network Namespace ,而是和宿主机共用一个 Network Namespace。

10、容器将不会虚拟出自己的网卡,配置自己的 IP 等,而是使用宿主机的 IP 和端口。

11、但是,容器的其他方面,如文件系统、进程列表等还是和宿主机隔离的。

12、这个模式指定新创建的容器和已经存在的一个容器共享一个 Network Namespace,而不是和宿主机共享。

13、新创建的容器不会创建自己的网卡,配置自己的 IP,而是和一个指定的容器共享 IP、端口范围等。

14、同样,两个容器除了网络方面,其他的如文件系统、进程列表等还是隔离的。

本文到这结束,希望上面文章对大家有所帮助。