mirror of
https://github.com/mariocandela/beelzebub.git
synced 2025-07-01 18:47:26 -04:00
36 lines
684 B
Docker
36 lines
684 B
Docker
FROM golang:alpine AS builder
|
|
|
|
ENV GO111MODULE=on \
|
|
CGO_ENABLED=0 \
|
|
GOOS=linux \
|
|
GOARCH=amd64
|
|
|
|
RUN apk add git
|
|
|
|
WORKDIR /build
|
|
|
|
# Copy and download dependency using go mod
|
|
COPY go.mod .
|
|
COPY go.sum .
|
|
RUN go mod download
|
|
|
|
# Copy the code into the container
|
|
COPY . .
|
|
|
|
# Build the application
|
|
RUN go build -o main .
|
|
|
|
# Move to /dist directory as the place for resulting binary folder
|
|
WORKDIR /dist
|
|
|
|
# Copy binary from build to main folder
|
|
RUN cp /build/main .
|
|
|
|
# Build a small image
|
|
FROM scratch
|
|
|
|
# copy the ca-certificate.crt from the builder stage
|
|
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
|
COPY --from=builder /dist/main /
|
|
|
|
ENTRYPOINT ["/main"] |