请帮我解决这个问题,
swarm 模式下的覆盖网络允许跨节点容器能够像在同一网络上一样看到彼此。
那正确吗?
因此,如果我有以下设置:
- 两个相似节点 M(管理者)和 W(工作者)的 swarm-mode 集群
- 两个容器 CM 和 CW 分别运行在节点 M 和 W 上
- 厘米
depends_on: - CM:target
- 两个容器都连接到覆盖网络 OVNET
我ping target
能从CM那里得到吗?如果不是,为什么?
Demo:
docker stack deploy -c test.yml test
其中test.yml
如下:
version: "3"
services:
CM:
image: alpine
command: sh -c 'ping CW'
depends_on:
- CW
networks:
- OVNET
deploy:
placement:
constraints:
- node.role == manager
CW:
image: alpine
command: sh -c 'ping localhost'
networks:
- OVNET
deploy:
placement:
constraints:
- node.role == worker
networks:
OVNET:
driver: overlay
提前感谢!