【问题标题】:Communication between docker containers in different networks不同网络中 docker 容器之间的通信
【发布时间】:2017-05-22 13:48:53
【问题描述】:
如果我知道 Docker 容器 IP 地址,我可以轻松地从另一个容器与它通信,但只要它们在同一个网络中。
我的问题是,我如何与来自另一个网络的容器进行通信,为什么我不能访问同一台机器上的本地 IP?我对网络解释感兴趣,为什么我可以从 172.19.0.2 访问 172.19.0.1 但我不能从 172.19.0.2 访问 172.20.0.1。
使来自一个网络的 Docker 容器与来自另一个网络的 Docker 容器通信的可能解决方法是什么?
【问题讨论】:
标签:
docker
docker-networking
【解决方案1】:
您可以发布一个端口,然后通过 localhost(或 0.0.0.0 进行故障排除)访问该端口。
除此之外,您还可以使用 docker 网络的替代方案,例如链接或其他东西。但我不建议这样做。如果您希望两个容器相互通信而不是与公众通信,只需为这两个容器创建一个新网络。
您可以指定这个网络是外部的,他们甚至可以从不同的撰写文件加入它。