如何一次从docker回购所有docker集装箱图像?

我有一个私人docker回购,我有10个容器图像存储。 我想把所有图像拖到一台机器上。 有没有一种方法,我可以从一个单一的命令从回购所有图像? 一些命令就像

docker pull xx.xx.com/reponame/* 

在研究中,我find了拉取单个图像的所有标签的方法; 但到目前为止在所有图像上没有运气

不知道什么types的命令是单一命令,单线?

 for repo in repo1 repo2 repo3; do docker pull xx.xx.com/$repo; done 

可以用docker-compose “破解”这个。

 # docker-compose.yml version: '3.1' services: a: image: a-image b: image: b-image c: image: c-image # ..... 

docker-compose pull --parallel

简单。

安装jq来parsingJSON,编辑REGISTRYvariables并运行这个脚本:

 #!/bin/sh REGISTRY="http://registry:5000" for repo in $(curl -s $REGISTRY/v2/_catalog | jq -r '.repositories[]') ; do for tag in $(curl -s $REGISTRY/v2/$repo/tags/list | jq -r '.tags[]') ; do docker pull $REGISTRY/$repo:$tag done done 

有关DockerregistryAPI的详细信息: https : //github.com/docker/distribution/blob/master/docs/spec/api.md