我有一个简单的应用程序,用于github.com/go-sql-driver/mysql连接到 MySQL 数据库并执行简单的查询。这一切在我的本地机器上运行良好,但是当我尝试使用 docker build 构建它时,我得到以下输出:


[+] Building 4.1s (9/10)

 => [internal] load build definition from Dockerfile                                                               0.0s

 => => transferring dockerfile: 104B                                                                               0.0s

 => [internal] load .dockerignore                                                                                  0.0s

 => => transferring context: 2B                                                                                    0.0s

 => [internal] load metadata for docker.io/library/golang:onbuild                                                  1.3s

 => [auth] library/golang:pull token for registry-1.docker.io                                                      0.0s

 => [internal] load build context                                                                                  0.0s

 => => transferring context: 5.63kB                                                                                0.0s

 => CACHED [1/2] FROM docker.io/library/golang:onbuild@sha256:c0ec19d49014d604e4f62266afd490016b11ceec103f0b7ef44  0.0s

 => [2/2] COPY . /go/src/app                                                                                       0.1s

 => [3/2] RUN go-wrapper download                                                                                  2.0s

 => ERROR [4/2] RUN go-wrapper install                                                                             0.6s

------

我的 go 版本是最新的,我正在使用以下 dockerfile:


FROM golang:onbuild

据我所知,这应该go get是它需要的所有包。我也试过这样:


FROM golang:onbuild

RUN go get "github.com/go-sql-driver/mysql"

这具有相同的输出。请注意,在我的代码中,我像这样导入包:


import _ "github.com/go-sql-driver/mysql"

我还使用了 github 上的其他包,这些似乎工作正常。