docker容器启动成功外部访问不到的原因分析
作者:逐 梦
这篇文章主要介绍了docker容器启动成功外部访问不到的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
docker容器启动成功外部访问不到原因
docker启动成功,外部网络访问不了
可能有如下原因
1.容器端口未与宿主机端口映射
映射方式:通过 -p 宿主机端口:容器端口
2.如果都映射正确,但是在其他机器或还是外部宿主机中访问不到
注意启动容器是否有这样的警告
这个警告代表:IPv4转发已禁用。网络是行不通的。是因为IPv4转发被禁用了,只需要开启就可以了。
开启方式:
docker容器内无法访问外部网络,导致容器间无法建立连接
docker 容器内无法访问外部网络,导致容器间无法建立连接(比如无法连接db)
若设定200.200.200.200 是主机的网卡,docker内部有自己的网络,需要通过net转换出来才能访问到主机,net转换会经过iptables, iptables这里有问题就会导致访问不主机ip
1.kill掉docker所有进程 [root@localhost ~]# pkill docker 2.清空nat表的所有链 [root@localhost ~]# iptables -t nat -F 3.停止docker默认网桥docker0 [root@localhost ~]# ifconfig docker0 down 4.删除docker0网桥 [root@localhost ~]# brctl delbr docker0 5.重启docker服务 [root@localhost ~]# systemctl restart docker
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。