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"]