热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何检查gitlab容器注册表中是否存在image:tag

如何解决《如何检查gitlab容器注册表中是否存在image:tag》经验,为你挑选了1个好方法。

我知道这可以通过来完成dockerhub。我想知道是否有类似的东西可用于gitlab注册表。

用例是,我编写了一个架构脚本,以将部署还原为用户提供的特定标签。在实际提取图像之前,我想知道注册表中是否存在具有指定标签的图像,并相应地警告用户。

我已经搜索了他们的文档,但找不到任何东西。

注意:这里的用户是部署代码的人。



1> morty..:

更新:我添加了一个解决方案,该解决方案无需访问以下docker服务器(非特权模式)即可工作。

好的,这是我通过启用实验性客户端功能使用docker:stable镜像想到的解决方案。

mkdir -p ~/.docker
"echo '{\"experimental\": \"enabled\"}' > ~/.docker/config.json"
docker  login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
docker  manifest inspect $IMGNAME:$IMGTAG > /dev/null && exit || true

exit如果该标记已存在,则终止构建脚本。另外,您还应该知道它会~/.docker/config.json被覆盖。这也是为什么登录必须随后发生的原因。

更新:除了写配置文件,还可以将DOCKER_CLI_EXPERIMENTAL环境变量设置为enabled。因此,前两行可以替换为export DOCKER_CLI_EXPERIMENTAL=enabled

更新: 如果您没有启用特权模式,因此无法访问docker-daemon,则可以使用Harbor提供的Registry-api脚本(请注意,它们是python2。)。如果要使用kaniko构建docker映像,这将很方便,而无需访问docker -daemon。


推荐阅读
author-avatar
高档的干果ieb
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有