java - 如何以编程方式从 GCP 注册表中获取已发布的 docker 镜像列表
问题描述
我正在尝试查找一些 API(例如 java,但可能是其他一些)如何从谷歌云平台注册表中获取已发布的 docker 图像名称/标签。我发现如何使用 gcloud 控制台命令执行此操作:
gcloud container images list-tags gcr.io/[GCP_REPOSITORY_NAME]
它基本上给了我想要的东西,但它是控制台,我需要这些数据以编程方式在后端获取。有什么想法吗?提前致谢。
解决方案
目前,Google Container Registry 产品没有 REST API,但您可以使用 Registry 名称作为 URL ,并在 Java 代码中针对它运行HTTP 请求:
curl -u "oauth2accesstoken:yourAccessToken" https://gcr.io/v2/yourProject/yourImage/tags/list
您可以accessToken
使用命令获取gcloud auth print-access-token
。推荐的方法是它属于一个 serviceAccount。
虽然我不确定Docker Registry HTTP API V2是否与 Google Container Registry 完全兼容,但这种特定方法对我有用。
推荐阅读
- json - 具有动态路径的 Firebase 子安全规则
- http - swi prolog 8.0.2:gziped http
- plot - 邓恩的测试图 - 哪个包?
- android - Tensorflow Lite 模型有时无法检测到对象并崩溃
- azure - AzureWebJobsScriptRoot 变量未在 Azure Functions 上定义,但在本地返回正确的值
- javascript - 如何在 JavaScript 中对任意长的位序列进行 popcount 或计数位
- c - 什么会使 printk 不会立即出现在 dmesg 中?
- python - 修改函数内部列表中的单个元素
- hibernate - 注入 REST 服务类时,DAO 为空
- postgresql - 导致膨胀的数组的重复 Postgres 更新?