# Build stage FROM golang:1.23-alpine AS builder RUN apk add --no-cache git # Tell Go not to use proxy for our private modules ENV GOPRIVATE=git.threesix.ai/* WORKDIR /app # Copy go workspace and all source (workspace deps are local) COPY go.work go.work.sum* ./ COPY pkg/ ./pkg/ COPY services/api/ ./services/api/ # Build from workspace root so go.work is found RUN CGO_ENABLED=0 go build -o /api ./services/api/cmd/server # Production stage FROM alpine:3.19 RUN apk add --no-cache ca-certificates tzdata WORKDIR / COPY --from=builder /api /api EXPOSE 8001 ENTRYPOINT ["/api"]