# syntax=docker/dockerfile:1.7 # Dialectic.Backend.Go — multi-stage build (compile static binary, run on distroless). FROM golang:1.23-bookworm AS build WORKDIR /src COPY go.mod go.sum ./ RUN go mod download COPY . . ARG VERSION=dev RUN CGO_ENABLED=0 GOOS=linux go build \ -ldflags="-s -w -X main.Version=${VERSION}" \ -o /out/dialectic-backend . FROM gcr.io/distroless/static-debian12:nonroot WORKDIR /app COPY --from=build /out/dialectic-backend /app/dialectic-backend EXPOSE 8090 USER nonroot:nonroot ENTRYPOINT ["/app/dialectic-backend"]