修改docker网段
# 修改 docker0 默认网段
场景:在某些云环境中(如公司机房的私有云),172.17.0.0/16 这个网段已被云中的网络设备使用,在这种环境下,docker0 不能正常打开,这时候需要修改它的网段。或者 docker0 创建后,占用的 172.17.0.0/16 这个网段导致客户云环境的其他功能出现异常,这种场景下也需要修改 docker0 的网段。
处理: 一种是在目录 /etc/docker/ 下创建 daemon.json 文件,在文件内容为:
{
"bip": "172.23.248.0/21"
}
另一种:有数的 docker 安装脚本也提供修改 docker0 网桥 ip 段的功能,运行脚本:bash docker_install.centos.sh fix,脚本会把 ip 段更改为 172.23.248.0/21。
修改 docker_gwbridge 默认网段
场景:docker_gwbridge 的默认子网网段是 172.20.0.0/16,和 docker0 一样,也有可能和客户的网络设备冲突,这需要修改 docker_gwbridge 的默认网段。
处理:
如果节点已经加入 swarm 集群,首先离开集群:docker swarm leave --force
停止 docker 服务:sudo systemctl stop docker
删除 docker_gwbridge 网桥:
sudo ip link set docker_gwbridge down
sudo ip link del dev docker_gwbridge
重启 docker 服务: sudo systemctl start docker
删除 docker_gwbridge 网络: docker network rm docker_gwbridge
重新创建 docker_gwbridge 网络:
docker network create \
--subnet 172.24.248.0/21 \
--opt com.docker.network.bridge.name=docker_gwbridge \
--opt com.docker.network.bridge.enable_icc=false \
--opt com.docker.network.bridge.enable_ip_masquerade=true \
--opt com.docker.network.driver.mtu=1500 \
docker_gwbridge
其中 172.24.248.0/21 为修改后的子网段,这是建议值,如果有需要,可改为其他符合客户环境的值。 注意:双机部署中,上述步骤需要在两个节点上都执行。
以上内容对您是否有帮助?