Google 容器注册表是否支持 docker 远程 API V2

Does Google container registry support docker remote API V2

我将 docker 图像存储在我的私人 Google Container Registry 中,我想通过注册表 V2 API 与图像进行交互,例如获取图像的标签 (/v2/:imageName/tags/list).根据此 link,我相信它是受支持的,但我找不到相关文档。谁能帮帮我?

确实是(包括那个端点)。在以 here.

概述的标准方式进行身份验证后,您应该能够与其进行交互

如果您有任何问题,请随时通过 gcr-contact@google.com 与我们联系。

刚从 google 支持那里得到答案,希望这对其他人有帮助:

$ export NAME=project-id/image
$ export BEARER=$(curl -u _token:$(gcloud auth print-access-token) https://gcr.io/v2/token?scope=repository:$NAME:pull | cut -d'"' -f 10)
$ curl -H "Authorization: Bearer $BEARER" https://gcr.io/v2/$NAME/tags/list

要添加到 Quyen Nguyen Tuan 的答案中,如果您根本不想使用 gcloud,请创建一个服务帐户,传递用户名 _json_key 并使用服务帐户的 json 密钥代替密码:

$ export NAME=project-id/image
$ export BEARER=$(curl -u "_json_key:$(cat path/to/json/key.json)" "https://gcr.io/v2/token?scope=repository:$NAME:pull" | cut -d'"' -f 10)
$ curl -H "Authorization: Bearer $BEARER" https://gcr.io/v2/$NAME/tags/list

如果你的仓库在那个地方,记得加上适当的前缀(例如 eu.gcr.io)。