簡體   English   中英

嘗試在docker中使用dep安裝依賴項

[英]Trying to install dependencies using dep in docker

我創建了一個docker文件,其中安裝了golang dep工具,該工具將用於安裝golang項目所需的依賴項。 我已經能夠安裝該工具。 但是無法使用該工具安裝依賴項。 我不確定如何配置dep工具以能夠在docker映像中運行dep命令,它將安裝golang項目所需的所有依賴項

我正在使用下面的命令來運行dep工具,它在本地計算機上工作

# initialize the project and install dependencies
RUN dep init

我總是遇到錯誤:

初始化失敗:無法確定根項目/ go的導入路徑:/ go不在任何GOPATH / src中

現在我不知道是否需要設置二進制文件的路徑或如何實現該目的。 有一些教程可以構建docker文件來構建golang項目,但是互聯網上沒有任何可以使用golang dep工具安裝依賴項的東西。

這是帶有dep的Dockerfile的示例:

FROM golang:latest 

LABEL version="1.0"

RUN mkdir /go/src/app

RUN go get -u github.com/golang/dep/cmd/dep

ADD ./main.go /go/src/app
COPY ./Gopkg.toml /go/src/app

WORKDIR /go/src/app 

RUN dep ensure 
RUN go test -v 
RUN go build

CMD ["./app"]

您需要將目錄更改為項目目錄。 另外,為了獲得依賴關系,通常已經有了一個Gopkg.tomlGopkg.lock僅當您從使用另一個供應商工具的項目中遷移時才使用dep init ,根本不供應或從頭開始一個項目。

總結起來,我會做這樣的事情:

FROM golang:latest
RUN go get -u github.com/golang/dep/cmd/dep \
&&  mkdir /go/src/github.com/you \
&&  git clone https://github.com/you/yourproject /go/src/github.com/you/yourproject

WORKDIR /go/src/github.com/you/yourproject

RUN dep ensure -v
&&  go build

CMD ["./yourproject"]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM