通过GO程序获取docker version的基本信息

在命令行输入docker version 可以获取到docker 自身的基本信息

怎么通过程序去获取这些信息呢?

这里使用的是官方提供的SDK,在之前我写了一篇获取程序获取docker ps信息 原理基本上一模一样,可以先参考一下这篇博客。

程序如下

实例程序,只获取简单的字段,其实是可以获取到这里命令返回的所有字段信息的

package main

import (
	"context"
	"fmt"
	"github.com/docker/docker/client"
)

func main() {
	//获取ctx
	ctx := context.Background()
	//获取cli客户端
	cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
	if err != nil {
		panic(err)
	}

	v,err := cli.ServerVersion(ctx)
	if err != nil {
		panic(err)
	}
	fmt.Println("v.Version : ",v.Version)
	fmt.Println("v.Platform : ",v.Platform.Name)
}

程序执行结果如下

posted @ 2020-09-08 18:41  小尾学长  阅读(415)  评论(0编辑  收藏  举报