28 lines
677 B
Docker
28 lines
677 B
Docker
|
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"]
|