我怎样才能正确地供应商 github.com/docker/docker?

how can i properly vendor github.com/docker/docker?

这是我的 main.go

package cmd

import (
    "context"
    "fmt"

    "github.com/docker/docker/api/types"
    "github.com/docker/docker/client"
)

func main() {
    cli, err := client.NewClientWithOpts(client.WithVersion("1.38"))
    if err != nil {
        panic(err)
    }

    networks, err := cli.NetworkList(context.Background(), types.NetworkListOptions{})
    if err != nil {
        panic(err)
    }
    fmt.Println(networks)
}

我尝试 运行 dep init 但供应商文件夹以 docker/docker 的旧版本结束,因为最新的标签是 17.05 试图固定实际提交但没有用或者

我试了一下 go mod vendor 但这也依赖于 git 标签

奇怪的是 docker/docker 是 moby/moby 和 docker/engine 的别名。

任何人都可以向我解释并举例说明我如何才能成功地将供应商与 docker API 一起使用?

[[constraint]]
  name = "github.com/docker/docker"
  branch = "master"

[[override]]
  name = "github.com/docker/distribution"
  branch = "master"

实际上这两个条目帮助解决了 Gopkg.toml 中的依赖性问题,然后是 运行 dep ensure