【问题标题】:How to add pod/container creation timestamp label to kubernetes docker container labels?如何将 pod/容器创建时间戳标签添加到 kubernetes docker 容器标签?
【发布时间】:2020-12-08 18:02:24
【问题描述】:

创建 docker 容器的时间戳可以通过以下方式获知:

docker inspect --format='{{.Created}}' 6de2e88f7859
2020-12-08T17:29:37.769047437Z

同样,kubernetes pod(该容器所属的)创建的时间戳可以通过以下方式获知:

kubectl describe pod <pod-name>
Name:         <pod-name>
Namespace:    default                                                                                                                                                                                                                          
Priority:     0                                                                                                                                                                                                                                
Node:         xyz.com/11.11.11.11
Start Time:   Tue, 08 Dec 2020 17:29:36 +0000

我想将此 pod/容器创建时间戳(最好是 pod 创建时间戳 - 在 kubectl describe pod &lt;pod-name&gt; 输出中称为 Start Time: Tue, 08 Dec 2020 17:29:36 +0000)添加为可用的容器标签之一 (.Config.Labels)。一些默认标签是: io.kubernetes.container.name、io.kubernetes.pod.name、annotation.io.kubernetes.container.hash、annotation.io.kubernetes.container.ports等。这些标签可以使用以下命令查看:

docker inspect --format='{{json .Config.Labels}}' <container-id>

但是,我在这里找不到 pod/容器创建时间标签。有没有办法将此 pod/容器创建时间戳添加为标签之一?

我正在这里寻找一个容器标签,因为我想将它添加到 /etc/docker/daemon.json 文件中。

【问题讨论】:

    标签: docker kubernetes


    【解决方案1】:

    看代码: kubelet/kuberuntime/labels.go

    您似乎无法动态添加新标签。

    已经存在的标签是“硬编码”的,如果你想添加一些新标签,你需要在代码中添加它们,编译它并交换 kubelet 二进制文件。

    【讨论】:

    • 是否可以将以下内容添加为 docker 容器标签:docker inspect --format='{{.State.StartedAt}}' &lt;CONTAINERID&gt; | xargs date +%s -d ?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 1970-01-01
    相关资源
    最近更新 更多