myreport-space / Dockerfile
Chaudhry Waleed
Deploy RICS v2 (senior baseline, CPU Spaces Dockerfile)
a735e1d
Raw
History Blame Contribute Delete
1.57 kB
# Hugging Face Spaces — RICS v2 backend (OpenAI embeddings; no local torch/reranker).
FROM python:3.11-slim
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
libgomp1 \
curl \
&& rm -rf /var/lib/apt/lists/* \
&& useradd -m -u 1000 user \
&& mkdir -p /data /data/hf_cache \
&& chown -R user:user /data
ENV PIP_DISABLE_PIP_VERSION_CHECK=1 \
PIP_NO_CACHE_DIR=1 \
PYTHONUNBUFFERED=1 \
PYTHONDONTWRITEBYTECODE=1 \
HOME=/home/user \
PATH="/home/user/.local/bin:$PATH" \
PORT=7860 \
DATA_DIR=/data \
HF_HOME=/data/hf_cache \
EMBEDDING_PROVIDER=openai \
USE_RERANKER=false \
PII_USE_SPACY=false \
SECTION_CONCURRENCY=2 \
MAX_CONCURRENT_LLM_CALLS=3 \
NOTE_QUALITY_CONCURRENCY=1 \
OPENAI_RATE_LIMIT_MAX_RETRIES=8 \
OPENAI_RATE_LIMIT_BACKOFF_BASE_SECONDS=2.0 \
OPENAI_RATE_LIMIT_BACKOFF_MAX_SECONDS=90.0
USER user
WORKDIR /app
COPY --chown=user backend/requirements-spaces.txt ./backend/requirements-spaces.txt
RUN pip install --upgrade pip && \
pip install -r backend/requirements-spaces.txt
COPY --chown=user backend ./backend
COPY --chown=user frontend ./frontend
# PDF extractors (LlamaParse / Textract) load modules from REPO_ROOT/scripts/.
COPY --chown=user scripts ./scripts
EXPOSE 7860
HEALTHCHECK --interval=30s --timeout=10s --start-period=180s --retries=5 \
CMD curl -fsS "http://127.0.0.1:${PORT:-7860}/health" || exit 1
CMD ["sh", "-c", "exec uvicorn backend.main:app --host 0.0.0.0 --port ${PORT:-7860} --workers 1"]