feat: use multistage build to minimize container size

This commit is contained in:
Marc Deop 2020-09-30 16:49:03 +02:00
parent 0441dd494b
commit 9c830be100
No known key found for this signature in database
GPG key ID: FCB4350C7C5BE558

View file

@ -2,23 +2,23 @@
# MailHog Dockerfile
#
FROM golang:alpine
FROM golang:alpine as builder
# Install MailHog:
RUN apk --no-cache add --virtual build-dependencies \
git \
&& mkdir -p /root/gocode \
&& export GOPATH=/root/gocode \
&& go get github.com/mailhog/MailHog \
&& mv /root/gocode/bin/MailHog /usr/local/bin \
&& rm -rf /root/gocode \
&& apk del --purge build-dependencies
&& go get github.com/mailhog/MailHog
FROM alpine:3
# Add mailhog user/group with uid/gid 1000.
# This is a workaround for boot2docker issue #581, see
# https://github.com/boot2docker/boot2docker/issues/581
RUN adduser -D -u 1000 mailhog
COPY --from=builder /root/gocode/bin/MailHog /usr/local/bin/
USER mailhog
WORKDIR /home/mailhog