本文共 958 字,大约阅读时间需要 3 分钟。
当我们在使用 Docker 容器时,容器启动后分配的虚拟IP经常更改,这给运维团队带来了不少麻烦。
Docker 默认使用 bridge 桥接网络模式。这种模式下,容器的网络接口会向容器内部服务暴露不同的 IP 地址。
运行 docker network ls 查看现有的网络:
[root@localhost]# docker network lsNAME DRIVER SCOPE VERSION CODE CREATE TIME UPDATED TIME STATE DESCRIPTIONbridge 桥接 或者 或者 v0.24.0 docker 整个主机 2020-02-08T15:23:33 2020-02-08T15:23:33 健康 桥接网络
可以创建一个固定的网络:
docker network create --subnet=172.20.0.0/16 extnetwork
创建容器时指定固定的 IP:
docker run -p 8066:8066 -it -v /home/docker/mycat/conf/:/home/mycat/conf/ -v /home/docker/mycat/logs/:/home/mycat/logs/ --net extnetwork --ip 172.20.0.2 镜像id
注意:IP 分配应从 172.20.0.2 开始,因为 172.20.0.1 是网关。
使用 docker inspect 查看容器 IP:
[root@localhost]# docker inspect 你的容器id"NetworkSettings": { "Interface": "something", "IP": "172.20.0.2", ...} 确保 your application 可以处理固定 IP。
如果不再使用这个网络,可以删除它:
docker network rm extnetwork
转载地址:http://cxjxz.baihongyu.com/