禁用 docker 图片标签更新

Disabling docker image tag updating

在 docker 注册表 API 或码头 API 中是否有任何方法可以在图像标签被推送后禁用更新?原因是其他使用标记图像的人不会在他们不知情的情况下将其从他们下面切换出去。谢谢!!

图像只会在您进行拉取时在您下方换出,因此您可以通过避免任何拉取来解决您的问题。

当您需要确定您使用的是同一图像并且无法自己控制注册表服务器时,我建议您使用 sha256 哈希而不是标签来提取。按照设计,我不相信任何注册表服务器会限制覆盖标记,但 sha256 将始终相同。

要获取图像的 sha256,您可以 运行:

docker inspect -f '{{ .RepoDigests }}' yourimage

然后你可以使用以下语法通过 sha256 提取:

docker pull busybox@sha256:a59906e33509d14c036c8678d687bd4eec81ed7c4b8ce907b888c607f6a1e0e6

请注意,检查输出中有多个哈希值,您需要 RepoDigests 条目,在将图像推送到注册表之前,该条目不存在。