gpt4 book ai didi

docker - 如何测试 gcr.io 中是否已存在 docker 镜像的特定标签?

转载 作者:行者123 更新时间:2023-12-02 06:43:16 24 4
gpt4 key购买 nike

我在 gcr.io 中注意到,当我推送带有特定标签的 docker 镜像时:

gcr.io/myproject/myimage:mytag

如果该图像/标签组合已存在,则似乎会取消原始图像的标签,上传新图像,然后将标签应用到新图像。

这导致我的存储库因同一图像的许多未标记版本而变得臃肿。

如何测试图像/标签组合是否已存在于 gcr.io 中,以便我仅在需要时推送?

最佳答案

这是我在 shell 脚本中解决这个问题的方法

existing_tags=$(gcloud container images list-tags --filter="tags:mytag" --format=json gcr.io/myproject/myimage)

if [[ "$existing_tags" == "[]" ]]; then
printf "tag does not exist"
else
printf "tag exists"
fi

说明

我正在使用 gcloud 容器镜像列表标签 ( documentation here )

  • 并使用 --filter 标志过滤与 mytag 匹配的标签

  • 并使用 --format=json 格式化为 JSON

本质上,如果标签 mytag 不存在,则其输出将是一个空数组 [],否则,它确实存在。您可以通过脚本中的字符串比较来测试这一点,然后进行相应的操作。

关于docker - 如何测试 gcr.io 中是否已存在 docker 镜像的特定标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55343134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com