首页/云/Docker 容器速查/LABEL 镜像元数据标签
镜像与构建107 条

LABEL 镜像元数据标签

为镜像添加 key=value 元数据,OCI 推荐 org.opencontainers.image.* 系列;取代已废弃的 MAINTAINER 指令。

Docker 容器速查云更新于 2026-10-13

LABEL 是什么

LABEL 给镜像附加键值对形式的元数据:版本、来源仓库、许可证、维护者等信息都可以写进去。这些标签保存在镜像配置里,可以用 inspect 读取,也会被镜像仓库页面与安全扫描工具读取。它取代了早期用于声明维护者的 MAINTAINER 指令,后者已经不再推荐使用。

基本信息

语法LABEL key=value key2=value2(一条写多对,减少层数)
推荐键名OCI 注解体系:org.opencontainers.image.* 系列
常用键title、version、source、revision、licenses、created、authors
查看方式docker image inspect -f '{{json .Config.Labels}}' 镜像
替代指令MAINTAINER 已废弃,改用 org.opencontainers.image.authors
适用平台所有 Docker 镜像格式(OCI 与 docker 格式均支持)

典型使用场景

  • 合规留痕:记录版本与源代码提交号,便于追溯镜像对应哪次发布
  • 仓库页面展示:让制品库中的镜像带上描述与许可证信息
  • 自动化巡检:按标签筛选镜像,例如按环境或团队归类
  • 扫描工具联动:部分工具会读取标签判断来源与版本
  • 审计场景:从运行中的镜像反查构建来源与责任人

声明与读取

声明与读取
# 一条指令写多对,避免每对标签各占一层
LABEL org.opencontainers.image.title="web-api" \
      org.opencontainers.image.version="1.0.0" \
      org.opencontainers.image.revision="git-abc1234" \
      org.opencontainers.image.source="https://example.com/repo" \
      org.opencontainers.image.licenses="MIT"

# 构建期把版本号传进来,避免写死后忘记更新
ARG APP_VERSION=dev
LABEL org.opencontainers.image.version="${APP_VERSION}"

读取与核对

读取与核对
# 查看全部标签
docker image inspect -f '{{json .Config.Labels}}' app/web:1.0

# 只取版本与来源,用于发布记录
docker image inspect -f '{{index .Config.Labels "org.opencontainers.image.version"}} {{index .Config.Labels "org.opencontainers.image.revision"}}' app/web:1.0

# 按标签值筛选镜像(docker images 的 label 过滤针对构建期标签)
docker images --filter 'label=org.opencontainers.image.version=1.0.0'

常用键怎么读

键含义实践建议
image.title镜像名称与仓库名一致便于识别
image.version版本号构建参数注入,避免写死
image.revision源码提交号CI 自动填,便于回溯
image.source源码地址审计与问题反馈入口
image.licenses许可证合规扫描会读取
image.authors维护者替代已废弃的 MAINTAINER
标签值是字符串:包含空格或特殊字符时必须加引号,否则解析出错。变量拼接时建议整体加引号,避免空值导致格式异常。
标签写入镜像配置,修改标签需要重新构建(或用构建工具重新打标)。不要用标签承载密钥信息,镜像配置可被任何人读取。

易错点

  • 一条 LABEL 内多对赋值可少占层,逐条写会多出若干元数据层,长期累积影响镜像结构
  • 标签值含空格未加引号会解析异常,构建报错信息未必指向具体键名
  • 把密钥或内部地址写进标签,镜像一旦外发即泄露信息
  • 用标签记录版本却不与构建参数联动,发布时忘记更新,追溯结果失真

数据来源与参考

  • OCI Image Spec:Annotations(github.com/opencontainers/image-spec)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌