FROM golang:alpine as builder ARG ACCESS_TOKEN_USR="nothing" ARG ACCESS_TOKEN_PWD="nothing" RUN apk add --no-cache ca-certificates tzdata git WORKDIR / # Create a netrc file using the credentials specified using --build-arg RUN printf "machine git.coopgo.io\n\ login ${ACCESS_TOKEN_USR}\n\ password ${ACCESS_TOKEN_PWD}\n"\ >> ~/.netrc RUN chmod 600 ~/.netrc COPY . . RUN go mod download && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /server FROM scratch COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo COPY --from=builder /server / EXPOSE 8080 ENTRYPOINT ["/server"]