golang最小docker鏡像制作

因為go語言編譯好之后為可執行文件,不需要依賴go語言環境即可運行,所以可以在帶go語言的docker鏡像中編譯,編譯完成之后將二進制文件拷貝到一個不帶go環境的較小的鏡像即可,這里采用alpine鏡像作為運行的鏡像,以下是Dockerfile例子

FROM golang:alpine AS development
WORKDIR $GOPATH/src
COPY . .
RUN go build -o app

FROM alpine:latest AS production
WORKDIR /root/
COPY --from=development /go/src/app .
EXPOSE 8080
ENTRYPOINT ["./app"]

這樣制作完成的鏡像只有8.5M的大小,其中alpine基礎包5.53M

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容