开发者社区> 问答> 正文

如何使用Kubernetes访问标签?

我使用jenkins构建我的docker镜像:

docker build --build-arg VCS_REF=$GIT_COMMIT \
--build-arg BUILD_DATE=date -u +"%Y-%m-%dT%H:%M:%SZ" \
--build-arg BUILD_NUMBER=$BUILD_NUMBER -t $IMAGE_NAME
我正在使用Docker,但我正在迁移到k8。

使用docker我可以通过以下方式访问这些标签:

docker inspect --format "{{ index .Config.Labels "$label\"}}" $container
如何使用Kubernetes访问这些标签?

我知道在我的yaml文件的.Metadata.labels中添加这些标签,但我不喜欢它,因为 - 它将这些信息链接到部署而不是容器本身

  • 可以随时修改
    ...

kubectl describe pods

展开
收起
k8s小能手 2018-12-29 15:00:05 2056 0
1 条回答
写回答
取消 提交回答
  • 整合最优质的专家资源和技术资料,问答解疑

    Kubernetes不公开这些数据。如果是这样,它将成为PodStatus API对象(及其嵌入的ContainerStatus)的一部分,这是Pod数据的一部分,将被转出kubectl get pod deployment-name-12345-abcde -o yaml。

    您可以考虑在Docker镜像标记中编码一些数据; 例如,如果CI系统正在构建标记的提交,则使用源控件标记名称作为图像标记,否则使用提交哈希或序列号。另一个典型的路径是使用像Helm这样的部署管理器作为部署的主要真实来源,如果这样做,可以有一条从CD系统到Helm到Kubernetes的路径,可以传递标签或注释。您还可以经常在构建时设置软件以了解自己的构建日期和源代码控制提交ID,然后通过仅信息API(如HTTP GET /_version调用或其他类似API)公开该信息。

    2019-07-17 23:24:05
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
企业运维之云原生和Kubernetes 实战 立即下载

相关镜像