docker的网络模式
docker 总共有四种网络模式, 分别是
- host 模式
- bridge 模式
- none 模式
- container 模式
关于docker的网络模式, 在这篇文章中有非常详尽的说明, 就不赘述了. 理解Docker的网络模式
为什么需要指定容器IP
实际部署中, 我们需要指定IP, 避免IP混乱
如何实现指定容器IP
docker的bridge(docker0)网络, 在docker安装时就已经创建好了, 不支持指定容器IP, 所以我们需要再创建一个docker的bridge网络(bridge1), 为其指定子网, 使其支持指定容器IP, 接下来将通过命令演示的方式创建一个支持指定IP的docker bridge网络.
创建一个驱动为bridge的网络, 命名为newbridge
docker network create --driver bridge --subnet 172.16.12.0/16 --gateway 172.16.1.1 newbridge
查看刚刚创建的网络
docker network ls
创建容器测试
docker run -itd -h test --name test --network newbridge --ip 172.16.12.3 ubuntu
验证容器的ip
此命令为查看所有容器ip命令
docker inspect --format='{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)
可以看到容器的ip已经是刚才我们创建容器时指定的ip了. 大功告成.
引用说明
文中操作学习自 Docker 创建容器时指定容器ip