FROM python:3.10-slim

RUN apt-get update && \
    apt-get install -y --no-install-recommends libgl1 libglib2.0-0 curl && \
    rm -rf /var/lib/apt/lists/*

COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv

WORKDIR /app

COPY pyproject.toml README.md ./
COPY src/ src/
RUN uv sync --no-dev

COPY config.yaml ./
COPY web/ web/

ENV PRESA_MANO_CONFIG=/app/config.yaml
ENV PRESA_MANO_DATA=/app/data
ENV PRESA_MANO_PORT=8890

EXPOSE 8890

# Shell form so $PRESA_MANO_PORT viene espanso a runtime: cambi la porta in
# .env senza dover ricostruire l'immagine.
CMD uv run uvicorn presa_mano.main:app --host 0.0.0.0 --port ${PRESA_MANO_PORT}
