# Hugging Face Docker Space — The Tower Learns You (gr.Server custom frontend). # The Space serves server_app.py on port 7860. Real AI runs the tool-calling # agent against HF Inference Providers' OpenAI-compatible router when an HF_TOKEN # secret is set; otherwise it falls back to deterministic content, so the Space # is always playable. FROM python:3.12-slim # Run as the non-root user Hugging Face Spaces expects (uid 1000). RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH \ PYTHONUNBUFFERED=1 \ PORT=7860 \ SERVER_NAME=0.0.0.0 \ MODEL_BACKEND=local_openai \ LOCAL_OPENAI_URL=https://router.huggingface.co/v1 \ LOCAL_MODEL_ALIAS=Qwen/Qwen3-4B-Instruct-2507 WORKDIR /home/user/app COPY --chown=user requirements-server.txt . RUN pip install --no-cache-dir --upgrade pip \ && pip install --no-cache-dir -r requirements-server.txt COPY --chown=user . . EXPOSE 7860 CMD ["python", "server_app.py"]