docker - Bash命令列出远程注册表中的所有Docker镜像

标签 docker docker-registry

我有一个程序设置,可以远程管理本地网络上各种PC上的图像和容器。我也希望能够获得注册表上所有可用图像的列表。我拥有注册表计算机的IP,并且正在寻找一些命令来列出该注册表中的所有内容,以便按存储库/标签进行排序。

谢谢你的帮助。

最佳答案

我想您使用最新的v2 docker注册表。

Docker Registry v2具有定义良好的REST API

例如,如果您在以下位置有一个注册表:registry.example.com:5000和https代理,则可以使用地址:https://registry.example.com:5000/v2/_catalog列出所有存储库。

这是在注册表中列出前100个存储库及其标签的示例。请注意,与此快速示例相比,对存储库和标签的分页需要更仔细地进行。

registry="registry.example.com:5000"
repos=`curl https://$registry/v2/_catalog?n=100 | jq '.repositories[]' | tr -d '"'`
for repo in $repos; do 
   curl https://$registry/v2/$repo/tags/list; 
done

关于docker - Bash命令列出远程注册表中的所有Docker镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35870989/

相关文章:

docker - 如何在运行时将敏感数据发送到 docker 容器

java - 如何使用 CLI 将模块添加到 Wildfly

python - 将Rasa部署到App Engine时,Google Cloud构建权限错误

docker - 使用共享运行器访问 gitlab 注册表

rest - 如何通过给定配置的 **rest** api 推送 docker 镜像

docker - 使用 API v2 将图像上传到 Docker Registry 时出错

docker - 从 docker 容器中创建一个千斤顶客户端

php - Composer内存限制 docker

docker - 从第 3 方 repo 中检索 Docker 图像标签

docker - 如何解释这个 docker 注册表创建命令?