我目前正在使用它来检查 gcr.io 上是否有可用的图像。
tags_json=$(curl "https://gcr.io/v2/${repo}/${image}/tags/list" 2>/dev/null)
tags_found="$(echo "${tags_json}" | jq ".tags | indices([\"${version}\"]) | any")"
这是不幸的,因为与那里的一些 LTS 发行版相比,jq
该支持的版本相当新......indices
我可以为 docker.io 解决这个问题,它适用于旧版本jq
:
tags_json=$(curl "https://registry.hub.docker.com/v2/repositories/${repo}/${image}/tags/${version}/" 2>/dev/null)
tags_found="$(echo "${tags_json}" | jq ".v2?")"
有一个更好的方法吗?我看到有人提到 GCR 在典型的 docker 注册表协议之上支持一些扩展。我可以在这里使用的任何东西。