尝试连接自身时,带有Docker的Centos VM无法访问主机

时间:2016-08-24 23:37:02

标签: networking docker vmware docker-compose centos7

我在具有桥接网络的Centos VM上运行Docker。正在运行

ifconfig

表明我的VM获得了有效的IP地址。现在我在docker容器/映像中运行一些软件(在其他docker / networking配置中工作)。我在Docker容器中运行的一些代码使用SSL连接(java)连接到自身。在所有其他运行配置中,这非常有效。但是当使用Centos VM和docker-compose在桥接模式下运行时,我收到SSL Connect异常,错误:主机无法访问。我可以ping和使用相同的IP地址进入虚拟机,这一切都正常。对不起,我无法发布实际的设置/代码和脚本,因为它发布太多而且它也是专有的。

我对此感到困惑 - 为什么我在上述配置中无法访问主机?

2 个答案:

答案 0 :(得分:5)

仅供参考,我通过使用Docker提供的默认“桥接”容器解决了centos上的问题,但是将以下内容添加到我的firewalld配置中:

firewall-cmd --permanent --zone=trusted --add-interface=docker0
firewall-cmd --reload
service firewalld restart

您可能还需要打开一个端口以允许外部通信,如下所示:

firewall-cmd --zone=public --add-port=8080/tcp --permanent

答案 1 :(得分:0)

我的解决方案是切换到Ubuntu VM,因为将docker compose切换到默认的“桥接”网络破坏了我真正需要的别名

这里唯一剩下的问题是,为什么在配置firewalld之后,docker-compose上的用户配置的网络无法访问外部IP,从而迫使我们切换到默认的桥接网络