2019-06-04 16:56:29 +00:00
# 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
2014-11-11 15:35:16 +01:00
2017-03-22 22:28:05 +01:00
ADD . /go/src/github.com/dutchcoders/transfer.sh
2014-11-11 15:35:16 +01:00
2019-06-04 16:56:29 +00:00
WORKDIR /go/src/github.com/dutchcoders/transfer.sh
ENV GO111MODULE = on
2014-11-11 15:35:16 +01:00
# build & install server
2019-06-04 16:56:29 +00:00
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>"
2014-11-11 15:35:16 +01:00
2019-06-04 16:56:29 +00:00
COPY --from= build /go/bin/transfersh /go/bin/transfersh
2019-06-23 13:03:31 +02:00
COPY --from= build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
2018-09-22 16:55:02 +08:00
ENTRYPOINT [ "/go/bin/transfersh" , "--listener" , ":8080" ]
2014-11-11 15:35:16 +01:00
2018-10-28 21:40:30 +03:00
EXPOSE 8080