如何查询Docker Hub官方仓库的总存储大小?
Docker Hub仓库大小查询解决方案
Docker Hub官方并未对外提供类似PyPi公开统计页的全局存储统计入口,你所用的docker-registry-statistics工具仅适配自建的开源Docker Registry服务,Docker Hub官方接口做了多层权限和路径限制,无法兼容该工具的统计逻辑,所以会出现识别失败的问题。
不同场景下的可行方案
- 查询个人/组织名下仓库的总占用大小
先通过账号密码获取Docker Hub的API鉴权凭证,调用官方Hub API拉取名下所有仓库的列表,再逐个请求每个仓库的镜像manifest信息,累加各镜像层的大小即可得到总占用,计算时注意排除不同镜像/标签共享的镜像层,避免重复统计。也可以写简单的shell脚本结合dockerCLI实现,拉取所有名下镜像到本地后通过docker system df查看实际占用,统计完成后清理本地镜像即可。 - 查询单个公开仓库的总大小
直接拉取该仓库下所有标签、所有架构的镜像到本地,执行docker system df查看存储占用即可,统计完成后执行docker system prune -a清理本地冗余镜像释放空间。 - 查询Docker Hub全平台公共仓库总大小
目前Docker官方没有对外披露这一统计数据,也没有开放相关的公开查询接口。普通用户无法完成全平台统计:一是Docker Hub对普通用户的API请求有严格的频率限制,全量遍历公开仓库会被直接封禁访问权限;二是全平台镜像量过亿,统计需要的计算、带宽资源成本极高,普通用户没有能力完成。
内容的提问来源于stack exchange,提问作者TeaOuu
相关产品推荐
相关产品推荐

