docker版本号严格遵循semver规则x.y.z:x为主版本,含不兼容变更;y为次版本,新增向后兼容功能;z为修订版,仅修复bug和漏洞。

Docker 本身的版本号(如 26.1.4、24.0.7)严格遵循语义化版本(SemVer)规则:主版本号.次版本号.修订号,即 X.Y.Z。
主版本号(X)
代表重大变更,可能包含不兼容的 API 调整、命令行为修改或底层架构重构。例如从 Docker 20.x 升级到 21.x 时,CLI 插件机制、containerd 集成方式曾有显著调整;26.x 系列则强化了 BuildKit 默认启用与安全沙箱能力。主版本升级需评估兼容性,不建议无测试直接跨主版本生产迁移。
次版本号(Y)
表示向后兼容的新功能引入。比如 26.1.0 新增了 docker build --sbom 原生生成软件物料清单支持,26.2.0 引入对 OCI Image Index(多架构 manifest list)的更健壮拉取逻辑。这些变更不影响现有构建脚本或运行命令的执行,可安全灰度升级。
修订号(Z)
专用于修复安全漏洞、关键 bug 或稳定性问题,不新增功能。例如 26.1.3 修复了 docker run --gpus 在某些 NVIDIA 驱动组合下的设备挂载失败;26.1.4 修补了 registry 认证凭据在长时间空闲后失效导致 push 中断的问题。这类更新推荐及时应用,尤其在生产环境。
Docker 官方明确要求所有 CLI、daemon、containerd 组件版本保持一致(通过 docker version 可查看),其语义化节奏也同步体现在发布日程中:主版本每年约 1 次,次版本每 6–8 周一次,修订版按需紧急发布。
镜像标签(image tag)虽不属于 Docker 引擎自身版本,但官方文档与最佳实践反复强调——用户应将同一套 SemVer 规则应用于自己的镜像版本管理。例如 nginx:v1.25.4 不仅对应上游 Nginx 的版本,也暗示该镜像满足:
- 主版本
1:稳定 ABI 和配置语法 - 次版本
25:新增proxy_http_version 3.0支持等特性 - 修订
4:修复了 HTTP/2 流控内存泄漏等已知问题
这种内外统一的语义逻辑,让开发者能借助版本号快速判断兼容边界、升级影响和问题归属,是 Docker 生态可维护性的底层支撑。











