FROM golang:1.23 AS build
WORKDIR /src
COPY go.mod go.sum ./
COPY cmd ./cmd
COPY internal ./internal
ARG VERSION=dev
RUN CGO_ENABLED=0 go build -ldflags="-s -w -X main.version=${VERSION}" -o /gpu-turnstile ./cmd/gpu-turnstile

FROM gcr.io/distroless/static:nonroot
COPY --from=build /gpu-turnstile /gpu-turnstile
EXPOSE 8188 11434
USER nonroot
ENTRYPOINT ["/gpu-turnstile"]
