FROM golang:alpine

ARG VERSION
ARG BUILDDATE
ARG HOST

ADD . /src
WORKDIR /src

RUN env CGO_ENABLED=0 GOOS=linux \
    go build \
    -mod vendor \
    -tags netgo \
    -ldflags "-s -X main.Version=$VERSION -X main.BuildDate=$BUILDDATE -X main.BuildHost=$HOST -extldflags 'static'" \
    ./cmd/server

RUN env CGO_ENABLED=0 GOOS=linux \
    go build \
    -mod vendor \
    -tags netgo \
    -ldflags "-s -X main.Version=$VERSION -X main.BuildDate=$BUILDDATE -X main.BuildHost=$HOST -extldflags 'static'" \
    ./cmd/download

FROM alpine:latest

COPY --from=0 /src/server /
COPY --from=0 /src/download /

USER nobody:nobody
WORKDIR /
CMD /server

EXPOSE 7763