2022-05-08 20:49:53 +02:00
|
|
|
FROM golang:alpine AS builder
|
|
|
|
|
|
|
|
ENV GO111MODULE=on \
|
|
|
|
CGO_ENABLED=0 \
|
|
|
|
GOOS=linux \
|
|
|
|
GOARCH=amd64
|
|
|
|
|
|
|
|
RUN apk add git
|
|
|
|
|
|
|
|
WORKDIR /build
|
|
|
|
|
2023-08-30 23:04:35 +02:00
|
|
|
# Download dependency
|
|
|
|
COPY . .
|
2022-05-08 20:49:53 +02:00
|
|
|
RUN go mod download
|
|
|
|
|
|
|
|
|
2023-08-30 23:04:35 +02:00
|
|
|
# Build
|
2022-05-08 20:49:53 +02:00
|
|
|
RUN go build -o main .
|
|
|
|
|
|
|
|
WORKDIR /dist
|
|
|
|
|
|
|
|
RUN cp /build/main .
|
|
|
|
|
2023-08-30 23:04:35 +02:00
|
|
|
# Use scratch image as finally tiny container
|
2022-05-08 20:49:53 +02:00
|
|
|
FROM scratch
|
|
|
|
|
2022-12-19 23:08:21 +01:00
|
|
|
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
2022-05-08 20:49:53 +02:00
|
|
|
COPY --from=builder /dist/main /
|
|
|
|
|
|
|
|
ENTRYPOINT ["/main"]
|