快速修改docker容器内部使用的网段网桥

        今天碰到一个问题,docker容器内部使用的网段为172.18.0.0/16网段,正好另外有个测试的网段也是172.18.0.0,容器需要连接到这个网段上,由于容器使用网段冲突的原因连接不过。

        查看了很多关于docker网络的教程,给出的办法都是修改docker默认网桥docker0的配置,而且还要重启容器和focker服务,非常的麻烦。并且这台机器使用的网桥还不是docker0,而是自动生成的另一个虚拟网桥,图中的br-f284d6dbdbdf。快速修改docker容器内部使用的网段网桥_第1张图片

思考了很久,终于找出一个办法,就是创建一个和br-f284d6dbdbdf这个网桥一样的虚拟网桥,使用命令:

:~#    docker network create --subnet=172.30.0.0/16 docker-1  (172.30.0.0/16是我指定的网段,docker-1是我新的网段名)

然后把在172.18.0.0/16网段下的容器迁移过来,确定容器ip网段和使用的网桥名可以用:

:~#   docker inspect 容器ID

快速修改docker容器内部使用的网段网桥_第2张图片快速修改docker容器内部使用的网段网桥_第3张图片

网段迁移命令:

先连接新的网桥:~#    docker network  connect docker-1 容器ID

再断开旧的网桥:~#    docker network disconnect base_dab 容器ID  (base_dab是172.18.0.0网段的网桥名)

完成,接下来验证服务是否正常就行了,不用重启docker容器!

你可能感兴趣的:(linux,原创,docker,运维)