什么是 docker 注册表 v2 API 终结点,用于获取映像的摘要



根据 https://docs.docker.com/registry/spec/api/我可以调用/v2/<name>/tags/list来获取给定图像的标签列表。它工作正常,例如:

{"name"=>"avi/test", "tags"=>["latest"]}

但是,我想要每个标签的摘要。是的,"摘要"实际上是清单的哈希值(至少我从 API 中最好地理解它;不是 100% 清楚)。但是,我想要一种方法来知道"最新"(以及所有其他标签)的唯一标识符是什么。

用例:我可能有人将某个版本标记为最新版本,并想检查 tit 是否是最新的:

docker push avi/test:2.6
docker tag avi/test:2.6 avi/test:latest
docker push avi/test:latest
# build 2.7
docker push avi/test:2.7
# oops! Forgot to tag latest to 2.7

在上述情况下,如果我不仅可以检查标签 - 这将给我"2.6"、"2.7"、"最新" - 还可以检查摘要(至少是清单),我可以找到各种标签指向的内容,审计等。

AFAIK,没有摘要API。但是,根据 v2 API 规范,您可以对 /v2/<name>/manifests/<reference> 执行HEADGET请求。响应将包含一个包含指定清单摘要的Docker-Content-Digest标头(例如 latest )。

最新更新