以编程方式将服务添加到泊坞窗撰写项目

我有一个基于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_onlink )服务从一个文件引用到另一个文件。