是否可以在不在本地安装 docker 的情况下向 google 云容器注册表中的映像添加标记?



我需要在 Google 容器注册表中的存储库上的映像上添加一个标记,我想知道是否可以在不在本地安装 docker 并在映像上执行pulltagpush的情况下完成此操作。我知道如何使用 UI 执行此操作,但我想自动执行此过程。

谢谢。

如果您正在寻找特定于 Google 容器注册表的解决方案,则可以使用gcloud container images add-tag命令。例如:

gcloud container images add-tag gcr.io/myproject/myimage:mytag1 gcr.io/myproject/myimage:mytag2

参考: https://cloud.google.com/sdk/gcloud/reference/container/images/add-tag

如果你想使用代码,我建议看看这些库。

  • :https://github.com/google/go-containerregistry
  • 蟒蛇:https://github.com/google/containerregistry

如果你不想使用 Docker,你可以选择使用 gcloud 命令行,你只需要配置 Docker 以使用 gcloud 作为凭证助手:

gcloud auth configure-docker

之后,您可以按存储位置列出图像:

gcloud container images list --repository=[HOSTNAME]/[PROJECT-ID]

或列出映像的版本

gcloud container images list-tags [HOSTNAME]/[PROJECT-ID]/[IMAGE]

你也可以 标记图像

gcloud container images add-tag 
[HOSTNAME]/[PROJECT-ID]/[IMAGE]:[TAG] 
[HOSTNAME]/[PROJECT-ID]/[IMAGE]:[NEW_TAG]

gcloud container images add-tag 
[HOSTNAME]/[PROJECT-ID]/[IMAGE]@[IMAGE_DIGEST] 
[HOSTNAME]/[PROJECT-ID]/[IMAGE]:[NEW_TAG]

上述所有操作也可以通过UI完成。

对于您的问题"我想自动化此过程"不确定您在寻找什么,但您可以创建一个包含 gcloud 命令的 bash 脚本并从您的云外壳运行它

最新更新