Docker Compose 2026 路线图解读:从 V2 插件化到 AI 容器化的三个关键转向
2026 年 3 月,Tech Insider 发布覆盖 17 章的 Docker Compose 全景教程;同期 Docker 官方在 GitHub Actions hosted runners 上完成 2 月 9 日的大版本跳车——所有 Windows 与 Ubuntu 镜像(除 ubuntu-slim 外)一次性把 Docker 与 Docker Compose 推到最新主线。开发者感受到的「Compose 突然变快变稳」不是错觉,而是整个生态在 2025 末到 2026 初完成了一次静默换代。docker-compose(带连字符)退役从 2024 年就开始喊,这次 CI 流水线全面切换之后,docker compose(带空格)的 V2 Go 实现终于成为唯一标准入口。今天不抄文档,只挑三件事讲清楚:V2 插件化改了什么、Compose Spec v5.0.0 删了什么、watch / profiles / include 三个新特性怎么用。
一、V2 插件化:Docker CLI 不再分裂
Compose V2 最核心的改动是它不再是独立二进制,而是 Docker CLI 的子命令。「docker-compose up」「docker compose up」之争在 GitHub runner 升级后彻底画上句号——CI 模板里只剩空格版。Tech Insider 给出的 2026 基准是 Docker Engine 29.1+、Compose v2.40、Docker Desktop 4.40+ 三件套。另一个常被忽视的细节是启动速度:2026 工具链相比早期 v2 提速约 40%,对几十个服务的大型栈来说,本地开发与 CI 之间不再有「等着它起」的窗口。结合 watch 模式 + BuildKit 多平台构建,开发体验已经从「能用」迈入「好用」。

二、Compose Spec v5.0.0「Mont Blanc」砍了什么
2025 年 12 月发布的 Compose Spec v5.0.0 内部代号「Mont Blanc」,最显著的破坏性变更是移除内部 builder,把构建任务完全委托给 Docker Bake。version: "3.x" 老字段被官方明确标记为 obsolete,新文件建议直接用 name: taskflow 起手。至今仍有大量 2026 年二手教程继续抄着老 version 字段,新人照抄会被 lint 警告。v5.0.0 还把 image digest 调和逻辑重写:升级后第一次 compose up 可能按新算法重建容器,对生产是个不小的兼容性陷阱。建议大版本升级前先在 staging 跑一次 compose pull 触发 pull_policy refresh window(daily / weekly / every_N),把预期外的容器重建控制在可观测范围内。
三、watch / profiles / include:三个真香特性
watch 模式是 2026 版本里最推荐的开发提速器。它通过文件系统事件(不是轮询)监听源码变化,sync 动作镜像主机目录进容器,rebuild 在依赖清单(package.json)变更时自动重建——比 nodemon / air 更容器原生、跨平台一致。换团队成员时尤其明显,新人 clone 下来 docker compose watch 一条命令就能跑,不再需要各自配 nodemon 配置。profiles 解决「开发环境带 worker、生产环境不要」的矛盾,主启动只保留核心链路:docker compose --profile with-worker up -d 一条命令切换。include 指令给「基础设施与应用分离」用,把 db、cache、monitoring 放到 infra/compose.db.yaml 独立文件,主 compose 用 include 列表合并,比老的 extends 和多 -f 方案都干净。Compose Spec v5.0.0 把 include 的语义彻底稳定下来,平台工程团队和应用开发团队可以各管各的 yaml 文件。

小夏点评
小夏跑下来最直接的感受是:Docker Compose 在 2026 年已经从「写 demo 的玩具」变成「单机能扛的生产编排」。原因有三——V2 插件化让它在 CI 里跑得飞快,watch / profiles / include 让本地循环彻底甩掉手动重启,Spec v5.0.0 把 builder 交给 Docker Bake 之后,BuildKit 的多平台、secret、cache 能力一次性全打通。再叠上 2026 Spec 正式稳定的 GPU 资源声明,AI 推理 + Web 服务同一个 compose 栈就能跑起来。
不过v5.0.0 不是无痛升级:digest 调和重写会让升级后第一次 compose up 重建一批容器,version 字段淘汰让老 yaml 突然 warning。建议先用 docker compose config 验证新 spec 是否通过校验,再走蓝绿切换。如果只是想体验,本机 Docker Desktop 4.40+ 直接吃下所有改进,没必要折腾生产。
给读者的实操建议
- 升级前先备份:UpdraftPlus 之类拉一份数据库+文件完整备份,容器行为变化可秒级回滚。
- 生产用
depends_on: service_healthy:基础版只等容器启动,不等服务就绪——配合 healthcheck 才能避免 API 起来时数据库还没 ready 的连接风暴。 - GPU 容器走
deploy.resources.reservations.devices:2026 Spec 已正式稳定,配合 NVIDIA Container Toolkit 可同栈跑 ML 推理 + Web。 - 日志加
json-file大小限制:logging: { driver: "json-file", options: { max-size: "10m", max-file: "3" } }防止磁盘被日志撑爆。 - Compose Spec 别再写顶层 version 字段:v5.0.0 已将其列入 obsolete,继续写反而触发警告。
- 多文件用
include,别用extends:include 语义更清晰,是官方推荐方向。
参考资料:Tech Insider《How to Master Docker Compose (2026)》、Docker Blog《Announcing Compose V2 General Availability》、GitHub Changelog 2026-01-30《Docker and Docker Compose version upgrades on hosted runners》、Compose GitHub Releases 2026-10-02(#14011 / #14041 image digest reconciliation)。
