场景:
在宿主机上部署docker和docker-compose,使用docker-compose命令启动容器,导致宿主机不可访问。
原因:
此问题多半是因为docker容器使用的网桥和远程登录宿主机的机器属于通过Ip网段引起。
使用docker-compose up启动容器后,这些容器都会被加入app_default网络中。使用docker network ls可以查看网络列表。
这些网段默认是172.17,如果远程登录的机器属于172.17网段,就会有路由问题。 网桥创建的时候回在宿主机的路由表中增加172.17.0.0的路由信息。
解决:网段自行选择,不冲突即可
[~]$ cat ~/.docker/daemon.json
{
"debug" : true,
"default-address-pools" : [
{
"base" : "172.31.0.0/16",
"size" : 24
}
]
}
注意:本文归作者所有,未经作者允许,不得转载