根据这篇帖子: What does go build build?
go build go install 将二进制文件移到 $GOPATH/bin .
go build
go install
$GOPATH/bin
我的机器就是这样工作的。但是,我有一个Dockerfile:
FROM golang:latest ADD . /go/src/myapp WORKDIR /go/src/myapp RUN go get . RUN go build RUN ls /go/bin # shows myapp!! ENTRYPOINT ["/go/bin/myapp"] #works!!
/go/bin myapp 会是 /go/src/myapp/myapp 相反,我看到构建像install一样工作,二进制文件显示在/go/bin中。为什么?
/go/bin
myapp
/go/src/myapp/myapp
这个 go get -d 下载依赖项后停止。
go get
-d
d标志指示get在下载包之后停止;也就是说,它指示get不要安装包。
https://golang.org/cmd/go/#hdr-Download_and_install_packages_and_dependencies