请先看上一篇文章:https://www.yuque.com/tangwx/linux/xrn8oo

    1. version: '3'
    2. services:
    3. api:
    4. image: 10.211.55.103:5000/swarm/swarm-api:1.0-SNAPSHOT
    5. ports:
    6. - "8123:8123"
    7. stop_grace_period: 10s
    8. deploy:
    9. mode: replicated
    10. replicas: 3
    11. networks:
    12. - uber-over
    13. client:
    14. image: 10.211.55.103:5000/swarm/swarm-client:1.0-SNAPSHOT
    15. ports:
    16. - "8124:8124"
    17. stop_grace_period: 10s
    18. deploy:
    19. mode: replicated
    20. replicas: 3
    21. networks:
    22. - uber-over
    23. networks:
    24. uber-over:
    25. external: true

    注意网络被标记为外部:

    networks:
    uber-over: external: true

    uber-over 网络需要先行创建: docker network create -d overlay uber-over

    此时运行docker stack deploy -c docker-mh.yml mh 命令将不再创建 uber-over 网络

    同理,在其他stack中也指定相同的外部网络,那么这些stack便能互通了。