From bfe0bfbbd1a59ddadb72a6b07fecce71716088ec Mon Sep 17 00:00:00 2001 From: Maik Ellerbrock Date: Wed, 26 Jul 2017 08:51:27 +0200 Subject: [PATCH] Dockerfile: Reduce image size from 277MB to 27MB "xtrem" awesome container size optimization by using alpine:3.6 as base image and by installing Go at build time. See #3730 and #3738 --- Dockerfile | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 386fb09f..4d6ca2db 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,28 @@ -FROM golang:alpine3.6 +FROM alpine:3.6 ENV GOPATH /go +ENV PATH $GOPATH/bin:$PATH RUN \ adduser -h /site -s /sbin/nologin -u 1000 -D hugo && \ apk add --no-cache \ - dumb-init \ + dumb-init && \ + apk add --no-cache --virtual .build-deps \ + gcc \ + musl-dev \ + go \ git && \ + mkdir -p \ + ${GOPATH}/bin \ + ${GOPATH}/pkg \ + ${GOPATH}/src && \ go get github.com/kardianos/govendor && \ govendor get github.com/gohugoio/hugo && \ cd $GOPATH/src/github.com/gohugoio/hugo && \ go install && \ cd $GOPATH && \ rm -rf pkg src .cache bin/govendor && \ - apk del --no-cache git go + apk del .build-deps USER hugo WORKDIR /site @@ -22,4 +31,3 @@ EXPOSE 1313 ENTRYPOINT ["/usr/bin/dumb-init", "--", "hugo"] CMD [ "--help" ] -