在docker-compose.yml中使用继承

时间:2016-05-15 11:50:26

标签: docker yaml docker-compose

我有很多服务,它们在docker-compose中使用相同的基本配置。实际上大多数配置是相同的,有一些小的调整。

我已经看到以某种方式可以在YAML中继承值。我可以在docker-compose中使用它来定义“默认服务”,并在其他服务中使用它,例如docker-compose run?我该怎么做?

1 个答案:

答案 0 :(得分:2)

不,你不能用YAML做到这一点。 YAML中唯一的继承功能是Merge Key Language Independent Type,它仅适用于一个YAML文档,而不适用于同一个YAML文件中的多个文档(由---分隔),当然不适用于不同的YAML文件。< / p>

但是docker-compose读取docker-compose.yml并且如果可用docker-compose.override.yml,则第二个文件中的值(如果可用)会覆盖第一个文件中的值。结合-f选项为docker-compose指定输入YAML文件,您可以使用具有不同覆盖的共享基本文件。

这是docker-compose的一个功能,是对从YAML文件加载的数据完成的,而不是通过组合YAML文件然后加载它们。