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镜像信息。

Golang Docker SDK如何获取远程Docker Hub镜像信息?

原文地址: https://www.cveoy.top/t/topic/jl1B 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录