代码之家  ›  专栏  ›  技术社区  ›  Tommy

go-build-in-docker:意外的二进制in/go/bin

  •  0
  • Tommy  · 技术社区  · 6 年前

    根据这篇帖子: What does go build build?

    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中。为什么?

    0 回复  |  直到 6 年前
        1
  •  1
  •   codestation    6 年前

    这个 go get -d 下载依赖项后停止。

    d标志指示get在下载包之后停止;也就是说,它指示get不要安装包。

    https://golang.org/cmd/go/#hdr-Download_and_install_packages_and_dependencies