我使用 Docker 将我的项目添加到其中,现在我想对其运行一些测试,但我收到测试失败的错误
知道我在这里想念什么吗?
# build stage
FROM golang:1.11.1-alpine3.8 AS builder
RUN apk add --update --no-cache make \
git
ADD https://github.com/golang/dep/releases/download/v0.5.0/dep-linux-amd64 /usr/bin/dep
RUN chmod +x /usr/bin/dep
RUN mkdir -p $GOPATH/src/github.company/user/go-application
WORKDIR $GOPATH/src/github.company/user/go-application
COPY Gopkg.toml Gopkg.lock ./
RUN dep ensure --vendor-only
COPY . ./
Run Code Online (Sandbox Code Playgroud)
现在我构建了成功完成的 docker,现在我想对其进行测试。
我做了 docker docker run -it goapprun 成功运行
现在我使用命令go test -v ./...,但出现错误
# runtime/cgo
exec: "gcc": executable file not found in $PATH
FAIL github.company/user/go-application [build failed]
FAIL github.company/user/go-application/integration [build failed]
Run Code Online (Sandbox Code Playgroud)
知道如何解决这个问题吗?
我在 docker 文件中尝试另一个步骤,如下所示,这没有帮助
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix nocgo -o /go-application .
Run Code Online (Sandbox Code Playgroud)
Fli*_*mzy 11
您已经为您的构建禁用了 CGO,但您没有为您的测试禁用 CGO,您必须这样做:
CGO_ENABLED=0 GOOS=linux go test -v ./...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5889 次 |
| 最近记录: |