Networking

如何將某些網路流量從具有內部網路的 docker 容器路由到主機區域網路中的目標

  • February 12, 2018

我有一個 docker-compose 設置,如下所示:

version: "3"
services:
 client1:
   cap_add:
    - NET_ADMIN
   image: "client:testing"
   container_name: "client1"
   privileged: true
   tty: true
   networks:
     nwclient1: {}
   volumes:
    - ./../:/config
   command: ping server
 client2:
   cap_add:
    - NET_ADMIN
   image: "client:testing"
   container_name: "client2"
   privileged: true
   tty: true
   networks:
     nwclient2: {}
   volumes:
    - ./../:/config
   command: ping server
networks:
 nwclient1:
   internal: true
 nwclient2:
   internal: true

我希望這兩個容器能夠 ping 伺服器(可從 docker 主機訪問)但將它們保持在不同的子網中,以便它們之間無法進行通信。

我怎樣才能做到這一點?我在主機上嘗試了一些route add命令,但無濟於事。也許解決方案更簡單並集成到 docker 中。

提前致謝

解決方案就這麼簡單。我只需要刪除“內部”選項。容器仍然彼此隔離,我沒想到預設情況下會這樣!

引用自:https://serverfault.com/questions/896337