从kubernetes API获取docker图像标签

从kubernetes API获取docker图像标签,kubernetes,Kubernetes,我们正在构建docker映像,并在docker构建期间添加一些元数据标签,例如: docker build --label no.company.version=1.2.3 . 当我们稍后在kubernetes吊舱中使用此图像时,我们希望从kubernetes api检索该标签。这对于跟踪图像标记本身中编码的内容以外的其他元数据非常有用 标签可以通过节点上的docker获得,但我找不到任何方法在kubernetes中检索它们。 这有可能吗?我不知道有什么办法可以从Kubernetes那里得到d

我们正在构建docker映像,并在docker构建期间添加一些元数据标签,例如:

docker build --label no.company.version=1.2.3 .
当我们稍后在kubernetes吊舱中使用此图像时,我们希望从kubernetes api检索该标签。这对于跟踪图像标记本身中编码的内容以外的其他元数据非常有用

标签可以通过节点上的docker获得,但我找不到任何方法在kubernetes中检索它们。
这有可能吗?

我不知道有什么办法可以从Kubernetes那里得到docker标签。向下api允许您将k8s标签放入pod中,但是:

目前不支持从kubernetes api查询docker元数据。已打开一个PR以适应此请求。请遵循

如果使用Openshift,如果您碰巧正在使用该功能,则docker标签在ImageStreamTag对象(apiVersion:image.Openshift.io/v1)上可见

oc get istag myimage:latest -o yaml

apiVersion: image.openshift.io.v1
generation: 2
image:
    dockerImageLayers:
    - mediaType: application/vnd.docker.image.rootfs.diff.tar.gzip
      name: sha256:690b26398d8aadd19a2936c1b51a335c06e0887775135f3186bc318c2dbf6d15
      size: 31494540
    - ...etc...
  dockerImageManifestMediaType: application/vnd.docker.distribution.manifest.v2+json
  dockerImageMetadata:
    Architecture: amd64
    Config:
      Image: sha256:5593b121415d0e9e23ae1041628869379937580fd29d4e90d163f2101bd4d96d
      Labels:
        architecture: x86_64
        mvn.version: 1.0.0-SNAPSHOT
        git.branch: master
        git.revision: 17c5424fcf578b13144e03d638becfb86e18ff92
... etc...

问题是要求访问K8s的docker图像标签-但这难道不是另一种方式吗?用户应该可以将自定义标签应用于pod的容器,并将这些标签传播到docker中