FROM python:3.12-slim COPY --from=ghcr.io/astral-sh/uv:0.8.13 /uv /uvx /bin/ RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/app/.venv/bin:$PATH \ HF_HOME=/home/user/.cache/huggingface \ UV_LINK_MODE=copy \ UV_PYTHON_DOWNLOADS=never \ UV_NO_DEV=1 WORKDIR $HOME/app COPY --chown=user pyproject.toml uv.lock ./ RUN uv sync --locked COPY --chown=user main.py ./ COPY --chown=user app ./app EXPOSE 7860 CMD ["python", "main.py"]