无法在docker容器之间进行通信

时间:2017-04-11 12:44:17

标签: docker

我们正在运行两个docker容器,每个容器都有network作为主机,我们可以从外部与容器进行通信,但是我们无法在容器之间进行通信。

有没有办法配置docker网络,以便容器可以在自己之间以及在外部世界之间进行通信。

2 个答案:

答案 0 :(得分:0)

配置docker容器以使用" host"网络,你完全删除了docker网络堆栈,包括容器到容器网络和内置的dns发现。您在容器网络中看到的所有内容都与您在主机上看到的内容完全相同。因此,侦听localhost的另一个容器在127.0.0.1上可以从主机和其他具有主机网络的容器中看到。

在大多数情况下,这不是推荐使用docker容器的方法。您通常为一组容器创建一个docker网络,在该docker网络上启动这些容器,然后按容器名称引用其他容器。

答案 1 :(得分:0)

找到我的问题的解决方案,我能够使用docker0网络(默认网络)在容器之间进行通信,并将容器的选择端口映射到外部世界我使用-p映射从容器端口映射到主机端口。

因为@BMitch建议一个单独的网络只连接需要inter container comm的容器比使用docker0更好,因为没有任何显式网络配置的所有容器都连接到docker0。