假设我在同一台机器上有两个docker网络。 (Network-1和Network-2)
在每个网络上,我都有容器。 (Container-1-Network-1和Container-1-Network-2等)
我需要从Container-1(172.18.0.x)向Container-2(172.19.0.x)发送PUT请求,但我得到'连接拒绝',因为不同的网络无法相互通信。我有什么选择?我可以将容器移动到另一个网络,或者以某种方式将网络合并到一个或链接容器中(在docker-compose.yml中)?
感谢。
答案 0 :(得分:1)
理想情况下,您应该将容器添加到需要与其他容器通信的每个网络,并且每个网络应该彼此隔离。这是docker网络的默认设计。
要将容器添加到其他网络,请使用:
docker network connect $network $container
当您需要管理大量容器时,更简单的方法是使用docker compose来定义每个容器需要属于哪些网络。这会自动执行docker network connect
命令。