Golang Docker SDK如何获取远程Docker Hub镜像信息?
Golang Docker SDK与远程Docker Hub镜像信息获取
你是否遇到过使用Golang Docker SDK的ImageList方法只能获取本地镜像信息,而无法获取远程Docker Hub镜像信息的情况?
这是因为ImageList方法调用的是Docker daemon的API,而Docker daemon只能访问本地镜像仓库。
如何获取远程Docker Hub镜像信息?
想要获取远程Docker Hub镜像信息,我们需要使用Docker Hub API。
1. 获取指定仓库的所有镜像标签:
https://hub.docker.com/v2/repositories/{username}/{repository}/tags
其中,{username} 和 {repository} 分别对应Docker Hub上的用户名和仓库名。
2. 获取Docker Hub上所有镜像信息(支持分页和模糊查询):
https://hub.docker.com/v2/search/repositories?q={query}&page={page}&page_size={page_size}
{query}:查询关键字,可以为空。{page}:页码,从1开始。{page_size}:每页显示的镜像数量,最大值为100。
关于 'https://hub.docker.com/api/content/v1/products/search'
该网址确实也能获取Docker Hub上的镜像信息,但它并非公开API,更像是Docker Hub内部使用的接口。因此,不建议在应用程序中使用该网址。
希望本文能帮助你更好地理解Golang Docker SDK与Docker Hub API之间的关系,以及如何获取远程Docker Hub镜像信息。
原文地址: https://www.cveoy.top/t/topic/jl1B 著作权归作者所有。请勿转载和采集!