# syntax=docker/dockerfile:1 FROM golang:1.25-bookworm AS builder WORKDIR /src ENV CGO_ENABLED=1 COPY go.mod go.sum ./ RUN go mod download COPY . . RUN go build -trimpath -ldflags="-s -w" -o /out/gitgud ./cmd/server FROM debian:bookworm-slim AS runtime RUN apt-get update \ && apt-get install -y --no-install-recommends \ ca-certificates \ git \ && rm -rf /var/lib/apt/lists/* WORKDIR /app COPY --from=builder /out/gitgud /app/gitgud ENV GITGUD_ADDR=:8080 \ GITGUD_DATA_DIR=/data RUN mkdir -p /data VOLUME ["/data"] EXPOSE 8080 CMD ["/app/gitgud"]