首页/云/Docker 容器速查/compose 多文件合并与 override 约定
Compose 编排55 条

compose 多文件合并与 override 约定

默认文件与覆盖文件自动叠加:docker-compose.override.yml 在开发习惯上用于本地差异,生产用显式 -f 列表组合并核对结果。

Docker 容器速查云更新于 2026-10-12
自动叠加compose.yaml + docker-compose.override.yml
显式组合docker compose -f base.yml -f prod.yml up -d
合并方向靠后的文件优先

示例

示例
docker compose -f compose.yaml -f compose.prod.yaml config > /tmp/merged.yml
docker compose -f compose.yaml -f compose.prod.yaml up -d
# 常用环境变量方式
COMPOSE_FILE='compose.yaml:compose.prod.yaml' docker compose up -d
标量字段按后者覆盖,列表与映射类字段按合并规则叠加;合并结果一律用 config 渲染确认。

易错点

  • 默认自动加载 override 文件在部署机上也会生效,服务器目录里不要留开发用的 override
  • Windows 上 COMPOSE_FILE 分隔符与 Linux 不同,跨平台脚本建议显式 -f 列表

数据来源与参考

  • Docker 官方文档:Merge Compose files(docs.docker.com/compose/multiple-compose-files)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌