Docker,在不同网桥上的主机之间通信

Docker,在不同网桥上的主机之间通信,docker,docker-compose,docker-networking,Docker,Docker Compose,Docker Networking,我的情况是: 我在默认网桥网络(172.17.0.1/16)上有一个容器(容器a) 我在另一个桥(172.18.0.1/16)上有一组容器——通过docker compose创建。其中一个名为container_B_1(ip:172.18.0.2) 默认情况下,我无法从容器_A ping到容器_B_1 问题:如何使特定容器(container_B_1)也可以从默认网桥网络访问?换句话说:让它拥有172.17.0.x IP(172.18.0.x IP旁边)。就那一个容器 我在docker-co

我的情况是:

  • 我在默认网桥网络(172.17.0.1/16)上有一个容器(容器a)
  • 我在另一个桥(172.18.0.1/16)上有一组容器——通过docker compose创建。其中一个名为container_B_1(ip:172.18.0.2)
默认情况下,我无法从容器_A ping到容器_B_1

问题:如何使特定容器(container_B_1)也可以从默认网桥网络访问?换句话说:让它拥有172.17.0.x IP(172.18.0.x IP旁边)。就那一个容器

我在docker-compose.yml上试过这个

但是,获取错误:“网络范围的别名仅支持用户定义网络中的容器”

谢谢

在这里找到了答案:

2016年5月16日,ninchan8328发表评论:

我想,我可以让docker compose在自定义网络中启动容器,然后通过docker network connect bridge[container]以这种方式加入默认网络


您可以创建自己的网络并在撰写文件中指定:

  • 创建您自己的网络:
    
    docker网络创建--驱动程序桥接my_dev_网络
    
    您可以通过
    docker网络ls

  • 在docker-compose.yml中,为两个容器(容器A)和另一组容器指定刚刚创建的网络:


您可以通过
docker network inspect my_dev_network
进行验证,查看是否所有容器都加入了您自己的网络

以保持相同的IP系列,我遇到了相同的问题,并找到了此解决方案

包括
网络模式:网桥
在撰写文件中的每个服务下

这样,您就不必创建自定义网络