# Builder FROM golang:alpine AS builder WORKDIR /go/src/app ARG MAIN_GO=cmd/server/main.go ARG SERVER_PORT=8080 ENV SERVER_PORT {$SERVER_PORT} COPY go.mod go.sum ./ COPY internal ./internal COPY cmd ./cmd RUN ls -lh RUN go mod download && \ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" -o /go/bin/app $MAIN_GO # Destination image FROM gcr.io/distroless/base-debian10 COPY --from=builder /go/bin/app /app EXPOSE $SERVER_PORT ENTRYPOINT ["/app"]