我有image_id fc251f2434a12eaf8370dee1bc56ab1857978cb769d64e29fea373db699823c6
和图片名称registry
,我想找到最接近的标签。
我尝试过查询
curl https://registry.hub.docker.com//v1/repositories/registry/tags
但是没有以此哈希开头的标记。然后我试过
curl https://registry.hub.docker.com//v1/repositories/registry/images
$(...){“checksum”:“”,“id”:“fc251f2434a12eaf8370dee1bc56ab1857978cb769d64e29fea373db699823c6”},{“checksum”:( ..)
找到了我正在寻找的图像。
根据这些信息,我可以找到最近的标签吗?
答案 0 :(得分:1)
通常,如果自创建标签以来对其进行了修改或删除,通常就无法找出哪些标签是在引用给定的图像ID。
如果映像托管在docker.io/library/*
上(在Docker Hub上也称为“官方映像”),则可以查看此Git repository的历史。每次推送正式映像都会生成对该存储库的提交,因此可以通过进行本地克隆并使用git-grep来找出指向特定映像ID的标签。回购协议相当庞大,因此请考虑使用--depth
的{{1}}选项。
我个人从来没有克隆过仓库。就我而言,我一直在寻找官方git-clone
图片的丢失标签,因此我只是在GitHub的Web UI上浏览了history of postgres's tag-details.md,直到找到图片发布当天的提交。创建。然后,我仔细地单击了它们中的每一个,最后找到了一个包含匹配图像ID的特定提交。
P.S。要找出图像的创建日期,请使用postgres
(相对日期)和docker image ls my_image_id
(UTC中的绝对日期)。