FROM python:3.10-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . # Hugging Face Spaces uses port 7860 EXPOSE 7860 ENV FLASK_APP=backend/main.py ENV PYTHONPATH=/app/backend ENV HF_HOME=/app/.cache/huggingface ENV PYTHONUNBUFFERED=1 # Non-root user (HF Spaces security requirement) RUN useradd -m -u 1000 user && \ mkdir -p /app/.cache/huggingface && \ chown -R user:user /app USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH # 1 worker (to maximize CPU/RAM allocation for GGUF), 300s timeout (for slower CPU inference) CMD gunicorn --workers=1 --timeout=300 --bind=0.0.0.0:${PORT:-7860} backend.main:app