FROM python:3.12 WORKDIR /app COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/ COPY pyproject.toml uv.lock /app/ RUN uv sync --frozen --no-dev --no-install-project RUN useradd -m -u 1000 user RUN chown -R user /app USER user COPY --chown=user README.md /app/ COPY --chown=user src /app/src EXPOSE 7860 ENV PYTHONUNBUFFERED=1 CMD ["uv", "run", "uvicorn", "src.app:app", "--host", "0.0.0.0", "--port", "7860"]