Dockerfile golang构建

时间:2017-12-20 07:54:29

标签: docker go

我正在构建我的Go应用程序。我收到如下错误

  

cd。; git clone https://github.com/julienschmidt/httprouter /go/src/github.com/julienschmidt/httprouter克隆到

     

'/ go / src / github.com / julienschmidt / httprouter'...致命:无法   访问“https://github.com/julienschmidt/httprouter/”:无法访问   解析主机:github.com包github.com/julienschmidt/httprouter:   退出状态128   命令'/ bin / sh -c go get ./'返回非零代码:1

docker file。

....

    # install dependencies first
    RUN go get ./


    RUN go build


    CMD if [ ${APP_ENV} = production ]; \
        then \
        main; \
        else \
        go get github.com/pilu/fresh && \
        fresh; \
        fi

    EXPOSE 8080

构建命令

docker image build -t test:1.0。

感谢。有什么帮助吗?

1 个答案:

答案 0 :(得分:4)

  1. 检查DNS服务器
  2. 检查互联网连接
  3. 您可以使用文件夹中的脚本克隆存储库,然后将该文件夹复制到docker并构建项目。实施例

    FROM golang:1.9 as builder  
    RUN mkdir -p /go/src/folder   
    WORKDIR /go/src/folder    
    COPY src/ .  
    RUN go get -d  
    RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -installsuffix cgo -o app .    
    
    
    
    FROM alpine:latest  
    WORKDIR /
    COPY --from=builder /go/src/folder/app .  
    CMD ["/app"]