如何使用标记名作为正则表达式提取docker hub图像

如何使用标记名作为正则表达式提取docker hub图像,docker,docker-registry,amazon-ecr,Docker,Docker Registry,Amazon Ecr,要求: 假设我在docker hub中列出了以下图像: 图像名称:gvh 图像名称:vidgvh 图像名称:gvhjeevi 图像名称:herogvh 如何使用不同的标记名提取所有这些图像,但包含一个带有docker pull命令的公共子模式 对于aws ecr,我们必须在下面的命令下运行,但对于docker hub,没有这样的选项可用 aws ecr资源列表标签——资源arn arn:aws:ecr:region:account\u id:repository/repository\u n

要求: 假设我在docker hub中列出了以下图像:

  • 图像名称:gvh
  • 图像名称:vidgvh
  • 图像名称:gvhjeevi
  • 图像名称:herogvh
如何使用不同的标记名提取所有这些图像,但包含一个带有docker pull命令的公共子模式

对于aws ecr,我们必须在下面的命令下运行,但对于docker hub,没有这样的选项可用

aws ecr资源列表标签——资源arn arn:aws:ecr:region:account\u id:repository/repository\u name

参考:

docker pull imagename:

我建议使用多个不同命令的管道。 下面是一个例子:

curl https://registry.hub.docker.com/v1/repositories/mysql/tags \
   | jq -r '.[].name' \
   | grep "8.0" \
   | xargs -i docker pull mysql:{}

您还可以在grep命令中使用正则表达式。

您需要围绕中的技术编写一个脚本;Docker中没有对此的内置支持。
curl https://registry.hub.docker.com/v1/repositories/mysql/tags \
   | jq -r '.[].name' \
   | grep "8.0" \
   | xargs -i docker pull mysql:{}