# DOCKERFILE-PROBE-SENTINEL-7a3e — phase 102 fixture marker: this token
# exists nowhere else, so the extensionless_kb rows are unambiguous in
# the shared database.
#
# Dockerfile — the Brain of Reese app image: a slim Python runtime that
# serves the FastAPI app behind the homelab reverse proxy.

FROM python:3.12-slim

WORKDIR /app
COPY pyproject.toml uv.lock ./
COPY app ./app
RUN pip install --no-cache-dir uv && uv sync --frozen --no-dev

EXPOSE 8000
CMD ["uv", "run", "uvicorn", "app.main:app", "--host", "0.0.0.0"]
