一、原因
docker-compose创建网卡secsys_network的网段为172.18.0.0/16,网关为172.18.0.1,而主机修改网卡的网关也是
172.18.0.1,导致web容器访问mysql容器失败
二、解决
方法一:【修改secsys_network的网络为别的网段即可,我这是改成了10.10.10.0/24网段】
docker-compose down
docker network create secsys_network --subnet=10.10.10.0/24 -o com.docker.network.bridge.name=secsys_network
cp docker-compose.yml docker-compose.yml.save
修改docker-compose.yml文件,网络服务改成如下
networks:
secnet:
external:
name: secsys_network
docker-compose up -d
ifconfig
方法二:修改使用docker-compose启动的容器IP范围
vim /etc/docker/daemon.json
{
"debug": true,
"default-address-pools": [
{
"base": "172.31.0.0/16",
"size": 24
}
]
}
systemctl reload docker