Merge pull request #231 from dopessoa/ISSUE-219

Update Dockerfile generating smaller image
This commit is contained in:
Andrea Spacca 2019-06-22 10:30:14 +02:00 committed by GitHub
commit b34bec004e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,14 +1,23 @@
FROM golang:1.12-alpine as build
LABEL maintainer="Andrea Spacca <andrea.spacca@gmail.com>"
# Default to Go 1.12
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
# build & install server
RUN go build -o /go/bin/transfersh github.com/dutchcoders/transfer.sh
WORKDIR /go/src/github.com/dutchcoders/transfer.sh
FROM golang:1.11-alpine
COPY --from=build /go/bin/transfersh /go/bin/transfersh
ENV GO111MODULE=on
# 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"]