Osc*_*lli 5 docker docker-compose
在我的docker-compose中有一个nginx代理容器定义:
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
Run Code Online (Sandbox Code Playgroud)
我想在多个docker-compose.yml文件中定义此容器(每个项目一个).
我怎么能这样做,而不是每次都停止容器(因为使用端口80)?这个想法是:如果没有nginx-proxy容器在运行,请运行它,否则使用正在运行的容器.
小智 -1
您可以为所有项目使用一个 nginx。在这种情况下,您需要有 only_nginx/docker-compose.yml 文件,其中您有 ] nginx 服务并使用
projectx_service:
extends:
file: /path_to/only_nginx/docker-compose.yml
service: nginx-proxy
...
Run Code Online (Sandbox Code Playgroud)
您的每个项目 docker-compose 文件中都有这种块。
例子:
only_nginx/docker-compose.yml:
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
Run Code Online (Sandbox Code Playgroud)
项目1/docker-compose.yml
project1_service:
extends:
file: /path_to/only_nginx/docker-compose.yml
service: nginx-proxy
...
Run Code Online (Sandbox Code Playgroud)
项目2/docker-compose.yml
project2_service:
extends:
file: /path_to/only_nginx/docker-compose.yml
service: nginx-proxy
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
378 次 |
| 最近记录: |