我開(kāi)始使用 Docker,我有一個(gè)簡(jiǎn)單的圖像,我想在其中運(yùn)行 Go 腳本。這是圖像:FROM golang:alpineENV GO111MODULE=on \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=amd64WORKDIR /buildCOPY go.* ./RUN go mod downloadCOPY . ./RUN go build -o main .WORKDIR /distRUN cp /build/main .CMD ["/dist/main"]我的 Go 代碼部分給我?guī)?lái)了問(wèn)題:opt := option.WithCredentialsFile("my-app-firebase-adminsdk.json")app, err := firebase.NewApp(context.Background(), nil, opt)client, err := app.Firestore(context.Background())if err != nil { log.Fatalln("error initializing app:", err)}當(dāng)我運(yùn)行時(shí),這運(yùn)行良好go install && my-app當(dāng)我嘗試在 Docker 容器中運(yùn)行它時(shí),我收到以下錯(cuò)誤消息。初始化應(yīng)用程序時(shí)出錯(cuò):需要項(xiàng)目 ID 才能訪問(wèn) Firestore這一定意味著該my-app-firebase-adminsdk.json文件未包含在 Docker 容器中。我該如何解決這個(gè)問(wèn)題?我嘗試COPY my-app-firebase-adminsdk.json .在該COPY go.* ./行下添加,但沒(méi)有幫助,最終遇到了同樣的問(wèn)題。
1 回答

倚天杖
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
事實(shí)證明我不必那么復(fù)雜。當(dāng)我使用Dockerfile如下簡(jiǎn)單的方法時(shí),它起作用了:
FROM golang:alpine
RUN mkdir /app
ADD . /app
WORKDIR /app
RUN go build -o main .
CMD ["/app/main"]
- 1 回答
- 0 關(guān)注
- 123 瀏覽
添加回答
舉報(bào)
0/150
提交
取消