Docker Compose同时使用主机和桥接网络

问题描述 投票:0回答:1

我有2张图片,我想通过compose的默认网桥网络互相交谈,但我也希望它们能够访问我的主机网络。

为了使图像在组合的默认网桥网络内彼此对话,我不需要执行任何操作:

version: '3.4'
services: 
  hello:
   image: hello-world

  world:
    image: hello-world

根据上述规格,hello服务可以通过使用DNS名称world引用world服务>

如果我希望hello服务能够与主机网络交互,可以在规范中添加network_mode: host。>

version: '3.4'
services: 
  hello:
   image: hello-world
   network_mode: host
  world:
    image: hello-world

[这允许hello服务访问我的主机的网络,但不能再通过compose的内置DNS访问world。我该怎么办?

我已经尝试创建自定义网络,但是自定义网络无法使用主机驱动程序,并且我无法将network_modenetworks结合使用:

这不起作用:

version: '3.4'
services: 
  hello:
   image: hello-world
   network_mode: host
   networks:
   - bridge
  world:
    image: hello-world
    networks:
    - bridge

networks:
  test:
    driver: bridge
$ docker-compose up
ERROR: 'network_mode' and 'networks' cannot be combined

我有2张图片,我想通过compose的默认网桥网络互相交谈,但我也希望它们能够访问我的主机网络。允许图像在...

docker docker-compose docker-networking docker-network
1个回答
0
投票

如果它们都在您的主机网络上,则它们可以相互通信,就像普通应用程序彼此通信一样:通过本地主机。因此,您根本不需要桥接。

© www.soinside.com 2019 - 2024. All rights reserved.