首页 > 解决方案 > 我怎样才能正确地供应商 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 的 vendoring?

标签: apidockergovendor

解决方案


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

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

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


推荐阅读