第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Golang 在 Docker 鏡像中找不到包

Golang 在 Docker 鏡像中找不到包

Go
慕碼人2483693 2023-07-17 14:37:02
因此,我嘗試使用包含主文件補(bǔ)充代碼的不同目錄對 golang 應(yīng)用程序進(jìn)行 dockerize。我正在使用gorilla/mux。目錄結(jié)構(gòu)如下所示。$GOPATH/src/github.com/user/server  |--- Dockerfile   |--- main.go   |--- routes/          handlers.go   |--- public/          index.gohtml 它在我的主機(jī)上運(yùn)行沒有問題。問題是,當(dāng)我嘗試部署 docker 映像時(shí),它不會(huì)運(yùn)行并在創(chuàng)建后不久退出。我嘗試將dockerfile 中的WORKDIR命令更改為/go/src并將所有文件轉(zhuǎn)儲(chǔ)到那里,但仍然沒有成功。我還嘗試了docker hub上的官方文檔。也不行。我的 Dockerfile。FROM golang:latest  WORKDIR /go/src/github.com/user/serverCOPY . .RUN go get -d github.com/gorilla/muxEXPOSE 8000CMD ["go","run","main.go"]我的 golang main.gopackage main import (    "github.com/gorilla/mux"    "github.com/user/server/routes"    "log"    "net/http"    "time")func main(){  //... }當(dāng)我檢查 docker 映像的日志時(shí),我收到此錯(cuò)誤消息。錯(cuò)誤信息main.go:5:2: cannot find package "github.com/user/server/routes" in any of:    /usr/local/go/src/github.com/user/server/routes (from $GOROOT)    /go/src/github.com/user/server/routes (from $GOPATH)
查看完整描述

1 回答

?
qq_遁去的一_1

TA貢獻(xiàn)1725條經(jīng)驗(yàn) 獲得超8個(gè)贊

嘗試以下Docker文件:


# GO Repo base repo

FROM golang:1.12.0-alpine3.9 as builder


RUN apk add git


# Add Maintainer Info

LABEL maintainer="<>"


RUN mkdir /app

ADD . /app

WORKDIR /app


COPY go.mod go.sum ./


# Download all the dependencies

RUN go mod download


COPY . .


# Build the Go app

RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .


# GO Repo base repo

FROM alpine:latest


RUN apk --no-cache add ca-certificates curl


RUN mkdir /app


WORKDIR /app/


# Copy the Pre-built binary file from the previous stage

COPY --from=builder /app/main .


# Expose port 8000

EXPOSE 8000


# Run Executable

CMD ["./main"]

在這里,我們創(chuàng)建一個(gè)中間docker builder容器,將代碼復(fù)制到其中,在builder容器內(nèi)構(gòu)建代碼,然后將binary映像復(fù)制到實(shí)際的 docker。


這將有助于在最終容器中包含所有依賴項(xiàng),而且最終圖像的大小將非常小


查看完整回答
反對 回復(fù) 2023-07-17
  • 1 回答
  • 0 關(guān)注
  • 163 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)