镜像标签与版本策略
Docker 镜像标签(Tag)是管理镜像版本和区分不同构建的重要工具。合理的标签与版本策略有助于版本控制、团队协作及生产环境部署的稳定性。
1. 镜像标签基础
- 每个镜像可以有一个或多个标签
- 标签格式:
repository:tag,例如:
text
myapp:1.0.0
nginx:latest- 如果未指定标签,默认使用
latest
2. 标签命名规范与策略
2.1 语义化版本(SemVer)
- 格式:
MAJOR.MINOR.PATCH,例如1.2.3 - 便于识别兼容性和更新等级
- 示例:
text
myapp:1.0.0 # 初始版本
myapp:1.1.0 # 新增功能,不破坏兼容
myapp:1.1.1 # 修复 bug2.2 latest 标签
- 指向最新版本,适合测试和开发
- 在生产环境使用需谨慎,避免意外更新导致不兼容
2.3 环境标签
- 为不同部署环境指定标签,例如:
text
myapp:dev
myapp:staging
myapp:prod3. 标签管理操作
3.1 打标签
bash
docker tag myapp:1.0 myregistry.com/myapp:1.0
docker tag myapp:1.0 myregistry.com/myapp:latest3.2 推送镜像
bash
docker push myregistry.com/myapp:1.0
docker push myregistry.com/myapp:latest3.3 查看镜像标签
bash
docker images myapp3.4 删除镜像标签
bash
docker rmi myregistry.com/myapp:oldtag4. 最佳实践
- 对每次构建使用明确语义化版本
- 使用
latest标签仅作开发或 CI 测试 - 结合 CI/CD 自动生成标签(如 Git commit hash 或构建号)
- 定期清理过期标签,保持 Registry 整洁
通过合理的标签和版本策略,可以确保 Docker 镜像在开发、测试和生产环境中稳定可靠,并提升团队协作效率。