0
我一直在這個問題上停留了一段時間,並且希望對此問題採取最佳實踐方法。從本地建立碼頭圖像而不是git克隆
我在Go中構建了一個應用程序,我想用Docker在AWS上發佈。我下面就如何設置它,但是當我嘗試構建命令,我收到以下錯誤AWS instructions:
Sending build context to Docker daemon 182.8 MB
Step 1/1 : FROM golang:1.8.1-onbuild
# Executing 3 build triggers...
Step 1/1 : COPY . /go/src/app
Step 1/1 : RUN go-wrapper download
---> Running in e6bc4dd7dc44
+ exec go get -v -d
github.com/<myaccount>/<myapp> (download)
# cd .; git clone https://github.com/<myaccount>/<myapp>
/go/src/github.com/<myaccount>/<myapp>
Cloning into '/go/src/github.com/<myaccount>/<myapp>'...
fatal: could not read Username for 'https://github.com': No such device or address
我GOOGLE了一下,看來這可能是造成事實回購被設置爲私人,我想保持這種方式。一種常見的方法似乎是在圖像中嵌入證書或ssh密鑰以進行部署,這聽起來違背了安全性(甚至常識)方面的任何建議。
有沒有什麼辦法可以做到這一點?爲什麼它甚至試圖克隆任何東西,代碼已經在那裏?
編輯
的Dockerfile只包含以下行
FROM golang:1.8.1-onbuild
如果將源複製到GOPATH中,則不需要克隆回購。你如何準確地建立這個? – JimB
請包含您的Dockerfile。 – Flimzy
當你已經有文件時,你爲什麼要運行'go-wrapper download'? – BMitch