以编程方式将服务添加到泊坞窗撰写项目
我有一个基于Docker的组件,并用docker-compose
编排的项目。 其中一些是可选的,可以在运行时添加。
我可以考虑两种方法来实现这一点:
- 创build一个新的
serviceA.yml
撰写文件并将其作为单独的项目运行 - 添加
serviceA
到我的基础compose.yml
并再次运行
有什么更好的select呢?
我也看到你可以将docker-compose
文件和extend
关键字结合起来,但是我不认为这可以适用,因为我可以在运行时添加可变数量的服务。
我通常最终有多个yml文件 。
然后,您可以向docker-compose命令添加多个-f标志以指示要运行的服务。
例如,有:
- docker-compose.yml:包含基本的服务
- docker-compose-additional-services.yml:包含附加/可选服务。
你可以执行以开始:
docker-compose -f docker-compose.yml -f docker-compose-additional-services.yml up
它会启动所有的服务。
请注意,所有服务都合并为一个文件,因此您可以将( depends_on , link )服务从一个文件引用到另一个文件。