Docker本地和共享网络

时间:2018-09-18 12:00:44

标签: security docker networking overlay docker-swarm

我需要建立一个类似于下图所示的环境: Done with draw.io

如图所示,我需要在两个不同的虚拟机中部署两个需要通过私有IP地址相互通信的应用程序。但是,出于安全原因,“第三方应用程序”不能联系“ MongoDB”和“ REST API”不能联系“ MYSQL DB”非常重要。

为此,我尝试了Docker Swarm和Docker堆栈;不幸的是,通过这种方法,我完全失去了对服务部署位置的控制(例如,REST API可以部署在右侧的虚拟机中)。

有人可以帮助我找到一种设置此配置的方法吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

创建一个e xternal network并在每个堆栈中使用它

docker network create --driver=overlay --attachable your-share-network

撰写示例:

version: "3"
services:
  nginx:
    image: nginx
    networks:
    - your-share-network

networks:
  your-share-network:
    external: true

作为参考,请检查Docker network configuration reference