Update Dockerfile generating smaller image

This commit is contained in:
Douglas Pessoa 2019-06-04 16:56:29 +00:00
parent b3d7af058f
commit 8c91a2284a

View file

@ -1,14 +1,23 @@
FROM golang:1.12-alpine as build # Default to Go 1.12
LABEL maintainer="Andrea Spacca <andrea.spacca@gmail.com>" ARG GO_VERSION=1.12
FROM golang:${GO_VERSION}-alpine as build
# Necessary to run 'go get' and to compile the linked binary
RUN apk add git musl-dev
# Copy the local package files to the container's workspace.
ADD . /go/src/github.com/dutchcoders/transfer.sh ADD . /go/src/github.com/dutchcoders/transfer.sh
# build & install server WORKDIR /go/src/github.com/dutchcoders/transfer.sh
RUN go build -o /go/bin/transfersh github.com/dutchcoders/transfer.sh
FROM golang:1.11-alpine ENV GO111MODULE=on
COPY --from=build /go/bin/transfersh /go/bin/transfersh
# build & install server
RUN go get -u ./... && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags -a -tags netgo -ldflags '-w -extldflags "-static"' -o /go/bin/transfersh github.com/dutchcoders/transfer.sh
FROM scratch AS final
LABEL maintainer="Andrea Spacca <andrea.spacca@gmail.com>"
COPY --from=build /go/bin/transfersh /go/bin/transfersh
ENTRYPOINT ["/go/bin/transfersh", "--listener", ":8080"] ENTRYPOINT ["/go/bin/transfersh", "--listener", ":8080"]