多个 docker-compose 文件组网
- 运维笔记
- 2020-12-02
- 192热度
- 0评论
导航
1 场景举例
我有一个 nginx 的 docker-compose.yml,又有一个 webapp 的 docker-compose.yml。
由于某种原因,不能把它们放到同一个 docker-compose.yml 文件中,又希望可以用 nginx 对 webapp 进行反向代理(它们需要在同一个网络中,nginx 要能访问到 webapp)。
2 方案
nginx 的 docker-compose.yml
(一定要 3.5 版本)
version: "3.5" services: my-nginx: image: nginx ports: - "80:80" networks: - nginx-net networks: nginx-net: name: nginx_network
webapp 的 docker-compose.yml
version: "2" services: webapp: image: myapp networks: - nginx-net networks: nginx-net: external: name: nginx_network
启动之后,可以用 docker network ls 和 docker network inspect 命令查看网络状态。
3 原理浅释
nginx 创建了名为 nginx_network 的网络,webapp 加入了它。
ref:https://stackoverflow.com/questions/38088279/communication-between-multiple-docker-compose-projects