docker容器内无法访问其他服务器
Posted 努力lshdnks
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker容器内无法访问其他服务器相关的知识,希望对你有一定的参考价值。
问题:A,B两台服务器,都是docker部署的程序,A服务器的b1服务无法访问B服务器的c1服务(c1服务部署到A服务器的话可以访问),问题,docker容器内无法访问除宿主机外的局域网里的服务器?
解决办法:
这个其实应该非常少碰到,我碰到了算是巧合,因为默认的系统参数其实是不会出现这种情况的。
两种可能的原因会造成Docker容器内无法访问外部网络:
- 容器使用了桥接网络但防火墙屏蔽了通信
/etc/sysctl.conf
系统配置参数问题
我碰到的情况属于第二种,配置参数问题,修正方法:
- 编辑
/etc/sysctl.conf
- 将其中的
net.ipv4.ip_forward=0
改成net.ipv4.ip_forward=1
。 - 重载配置,之后Docker的容器即可正常通信,如果不行,restart下容器。
sysctl -p
以上是关于docker容器内无法访问其他服务器的主要内容,如果未能解决你的问题,请参考以下文章