|
|
@@ -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 |
|
|
|
|
|
|
|
WORKDIR /go/src/github.com/dutchcoders/transfer.sh |
|
|
|
|
|
|
|
ENV GO111MODULE=on |
|
|
|
|
|
|
|
# build & install server |
|
|
|
RUN go build -o /go/bin/transfersh github.com/dutchcoders/transfer.sh |
|
|
|
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>" |
|
|
|
|
|
|
|
FROM golang:1.11-alpine |
|
|
|
COPY --from=build /go/bin/transfersh /go/bin/transfersh |
|
|
|
COPY --from=build /go/bin/transfersh /go/bin/transfersh |
|
|
|
|
|
|
|
ENTRYPOINT ["/go/bin/transfersh", "--listener", ":8080"] |
|
|
|
|
|
|
|