Golang 查询 Docker Hub 镜像版本号标签
以下是一个使用 Golang 调用 Docker SDK 查询镜像在 Docker Hub 中的所有版本号标签的示例代码:
package main
import (
"context"
"fmt"
"github.com/docker/docker/api/types"
"github.com/docker/docker/client"
)
func main() {
ctx := context.Background()
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
if err != nil {
panic(err)
}
image := 'library/ubuntu' // 替换为你要查询的镜像名称
tags, err := cli.ImageList(ctx, types.ImageListOptions{
All: true,
Filters: filters.NewArgs(filters.Arg('reference', image)),
})
if err != nil {
panic(err)
}
for _, image := range tags {
for _, tag := range image.RepoTags {
fmt.Println(tag)
}
}
}
注意,需要先安装 docker sdk:
go get github.com/docker/docker
原文地址: https://www.cveoy.top/t/topic/j0Wc 著作权归作者所有。请勿转载和采集!