当前位置: 首页 > 知识库问答 >
问题:

如何列出远程注册表上Docker图像的所有标记?

经清野
2023-03-14

如何使用CLI(首选)或curl列出远程Docker注册表上Docker图像的所有标记?

最好不从远程注册表中提取所有版本。我只想列出标签。

共有1个答案

印晋
2023-03-14

我从这里得到了答案。多谢!:)

只有一行脚本:(找到debian的所有标记)

wget -q https://registry.hub.docker.com/v1/repositories/debian/tags -O -  | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n'  | awk -F: '{print $3}'

更新感谢@degelf的建议。下面是shell脚本。

#!/bin/bash

if [ $# -lt 1 ]
then
cat << HELP

dockertags  --  list all tags for a Docker image on a remote registry.

EXAMPLE: 
    - list all tags for ubuntu:
       dockertags ubuntu

    - list all php tags containing apache:
       dockertags php apache

HELP
fi

image="$1"
tags=`wget -q https://registry.hub.docker.com/v1/repositories/${image}/tags -O -  | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n'  | awk -F: '{print $3}'`

if [ -n "$2" ]
then
    tags=` echo "${tags}" | grep "$2" `
fi

echo "${tags}"
 类似资料:
  • 问题内容: 如何使用CLI(首选)或curl在远程Docker注册表上列出Docker映像的所有标签? 最好不要从远程注册表中提取所有版本。我只想列出标签。 问题答案: 我从这里得到了答案。非常感谢!:) 只需一行脚本:(找到debian的所有标签) 更新感谢@degelf的建议。这是shell脚本。 你可以创建一个新的文件名,,在/ usr / local / bin目录(或添加PATH环境到你

  • 问题内容: 我正在使用docker Registry v1,并且有兴趣迁移到较新的版本v2。但是我需要某种方式来获取注册表中存在的图像列表。例如,对于注册表v1,我可以执行GET请求,结果是: 但是我在官方文档中找不到类似于在注册表中获取映像列表的内容。有人知道在新版本v2上执行此操作的方法吗? 问题答案: 对于最新(截至2015年7月31 日)的Registry V2版本,您可以从DockerH

  • 问题内容: 我正在尝试从Node.js中的Google Container Registry(gcr.io)获取可用图像及其标签的列表。 我首先使用来获取具有scope的令牌,然后将该令牌交换为令牌,如下所示: 然后,我尝试使用此方法来调用端点: 我得到以下错误: 足够公平,它必须提供我的项目ID,但是我应该在哪里提供呢? 只是为了看看我是否还能使其他任何东西正常工作,我尝试了: 我得到以下信息:

  • 问题内容: 我运行了一个私有Docker注册表,我想从存储库中删除除之外的所有图像。我不想删除整个存储库,仅删除其中的一些图像。该API文档不提一个办法做到这一点,但肯定这是可能的? 问题答案: 当前,您无法将注册表API用于该任务。它仅允许您删除存储库或特定标签。 通常,删除存储库意味着删除与此仓库关联的所有标签。 删除标签意味着删除图像和标签之间的关联。 以上所有都不删除单个图像。它们留在您的

  • 我尝试为Docker图像定位一个特定的标记。如何在命令行上执行此操作?我希望避免下载所有图像,然后删除不需要的图像。 在官方的Ubuntu版本中,https://registry.hub.docker.com/_/ubuntu/,有几个标签(为它发布),而当我在命令行上搜索它时, 也可以在命令行的帮助下进行搜索https://docs.docker.com/engine/reference/com