如何告诉我的go build以查看godep库的vendor文件夹?

问题描述 投票:-1回答:1

我有一个简单的Dockerfile,我正在尝试构建并运行我的Go REST API服务器。

到目前为止我的Dockerfile是:

FROM golang:latest
RUN mkdir /app
ADD . /app/
WORKDIR /app
RUN go build -o main .
CMD ["/app/main"]

当我运行docker-compose时,我收到此错误:

main.go:12:2: cannot find package "github.com/bradfitz/gomemcache/memcache" in any of:

我正在使用godeps,我的供应商文件夹已经销售了所有库,为什么在这种情况下构建不起作用?

我是否必须告诉它查看供应商文件夹?

go godeps
1个回答
1
投票

如果您的源代码位于vendor之外,则GOPATH目录无法正常工作(请参阅https://github.com/golang/go/issues/14566)。在当前的golang:latest Docker镜像中,GOPATH设置为/go,因此最简单的解决方案是将代码复制到/go/src的子目录中并从那里构建。

© www.soinside.com 2019 - 2024. All rights reserved.