为什么我的容器没有加入 docker-compose 中的现有网络?

sec*_*sec 1 docker docker-compose

我有一个简单的应用程序,我试图连接到现有的现有网络,但是当我这样做时,docker-compose up它只是为自己创建一个新网络,而无需加入现有网络。我尝试加入的现有网络用于 traefik,称为代理。我在 traefik 后面运行的所有其他服务都运行良好。我必须手动将 mynewapp 添加到代理网络才能使其工作。我所有的其他服务撰写文件也在各个文件夹中解耦,所以我不认为是这样。

我尝试将外部和内部值定义为 true 和 false,但它仍然创建了自己的网络。如果我定义了一个默认网络和代理网络,那么它只会创建两个名为 mynodeapp_default 和 mynodeapp_proxy 的新网络。如果我运行docker network inspect proxy,我不会在其中看到 mynewapp(但我会看到所有其他正在运行的服务)。

我的输出docker network list

62eba8d7e127        proxy                 bridge              local
a50cdb97b743        testapp_proxy         bridge              local
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?

version: '3'

services: 
  mynodeapp:
    container_name: mynodeapp
    build: .
    volumes:
      - ./:/app/
    networks: 
      - proxy
    labels: 
      - traefik.enable=true
      - traefik.network=proxy

networks: 
  proxy:
Run Code Online (Sandbox Code Playgroud)

Pau*_*aul 6

如果您希望容器加入现有网络,则需要使用外部选项

version: '3'

services: 
  mynodeapp:
    container_name: mynodeapp
    build: .
    volumes:
      - ./:/app/
    networks: 
      - proxy
    labels: 
      - traefik.enable=true
      - traefik.network=proxy

networks: 
  proxy:
    external: true
Run Code Online (Sandbox Code Playgroud)