我有一個 Go 1.18 應用程序,它在我的 WSL2 Ubuntu 中運行沒有問題,但無法在 Docker 容器中運行并顯示錯誤消息exec /app: no such file or directory。我的 Dockerfile(稍微改編自另一個沒有問題的 Go 1.12 應用程序)是:FROM golang:1.18-alpine AS buildWORKDIR /appCOPY go.mod ./COPY go.sum ./RUN go mod downloadCOPY source/*.go ./RUN go build -o /appFROM gcr.io/distroless/static-debian11COPY --from=build /app /appUSER nonroot:nonrootCMD ["/app"]構建它沒有顯示錯誤。我嘗試添加GOOS=linux和GOARCH=amd64構建,--platform linux/amd64但沒有任何區別(我認為應該沒有必要?)。我從 Distroless 切換到 Debian,同樣的問題。該文件/app存在 (11 mb, 755)。file /app給出這個輸出:app: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-x86_64.so.1, Go BuildID=UsV_orwX-S3Rwh16P1VH/6u2iHufDhnUYUkHBp0rE/2xn48wuW047ZRbQ7qPIy/ihQgooFxjsMgMzYGE-8h, not stripped我不知道我哪里出錯了。這里的問題是什么?
1 回答

滄海一幻覺
TA貢獻1824條經驗 獲得超5個贊
- 1 回答
- 0 關注
- 110 瀏覽