[英]Docker - Docker Compose stop company level services not base services
我有像 redis 和 mongodb 这样的基础服务,它们将共享同一图像的多个容器。
一旦客户请求新公司,我们将使用新端口为请求的公司创建一个新的 docker-compose 文件,并将 apache 配置为指向新的 Web 端口。
使用基本服务启动 company-1 服务
docker-compose -f docker-compose.base.yml -f docker-compose-company-1.yml up -d
公司 2 的方法相同
docker-compose -f docker-compose.base.yml -f docker-compose-company-2.yml up -d
这将为基本服务和 copmany 服务创建实例,并为公司传递配置。
同时down company-1服务
docker-compose -f docker-compose.base.yml -f docker-compose-company-1.yml down
这也会降低基本服务,但公司 2 需要的基本服务
如果我们通过 follwong 命令
docker-compose -f docker-compose-company-1.yml down
抛出错误ERROR: 服务 'company-1' 有一个指向未定义的服务 'mongodb-service' 的链接。
docker-compose 能解决我们的问题吗?
如何使用 docker 关闭特定的 copmany 服务而不是基础服务 compose down
有关 docker-componse 文件的更多信息
docker-compose.base.yml 服务
docker-compose-company-1.yml 服务
您可以使用 extends: docker-compose 中的选项来解决这个问题
docker-compose-base.yml
services:
base:
image:
container_name:
ports:
docker-compose-company.yml
services:
custom:
image:
container_name:
ports:
使用基地和公司的服务创建一个新的撰写文件
扩展docker-compose 的选项
docker-compose-base-company.yml
services:
base:
extends:
file: docker-compose-base.yml
service: base
custom:
image:
container_name:
ports:
您可以使用 docker-compose-base-company.yml 来运行 base 和 company 的服务
docker-compose -f docker-compose-base-company.yml up
。
并使用 docker-compose-company.yml 单独关闭公司服务
docker-compose -f docker-compose-company.yml down
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.