多个docker-compose文件-打印生成的合并docker-compose.yml文件

Ing*_*her 6 docker docker-compose

我正在运行Docker撰写合并多个docker-compose-yaml文件,例如:

docker-compose -f docker.compose.yml -f docker-compose.dev.yml -f docker-compose.X.yml -f docker-compose.Y.yml up
Run Code Online (Sandbox Code Playgroud)

因为这对调试很有帮助,是否可以打印docker-compose使用的合并后的docker-compose-yaml文件?

简化示例:

$ cat docker-compose.yml
> version: '3'
> 
> services:
>  nginx:
>     image: nginx:latest

$ cat docker-compose.dev.yml
> version: '3'
> 
> services:
>   nginx:
>     build:
>       context: nginx
>       dockerfile: Dockerfile

# Show merged result 
$PRINT_MERGED_DOCKERFILE_COMMAND -f docker.compose.yml -f docker-compose.dev.yml
> version: '3'
> 
> services:
>   nginx:
>     build:
>       context: nginx
>       dockerfile: Dockerfile
>     image: nginx:latest
Run Code Online (Sandbox Code Playgroud)

Ing*_*her 9

使用docker-compose配置将显示合并的docker-compose yaml:

https://medium.com/@pscheit/docker-compose-advanced-configuration-541356d121de

docker-compose -f docker.compose.yml -f docker-compose.dev.yml config
Run Code Online (Sandbox Code Playgroud)

它还会打印出所使用的结果变量,这对于调试也很有帮助。

  • 太棒了,谢谢!我在将“docker-compose.yml”拆分为基础“docker-compose.yml”和“docker-compose.override.yml”时遇到了麻烦,并且按照以下方式自动回答您的问题极大地帮助了我缩小问题范围:生成基础配置转储:`docker-compose config > base.yml`,然后逐步拆分配置并确认基本配置保持不变:`docker-compose config > new.yml && diff base.yml new.yml` (2认同)