# ────────────────────────────────────────────────────────────────────────────── # easyResearch Assistant — Dockerfile (Optimized for HF Spaces) # ────────────────────────────────────────────────────────────────────────────── FROM python:3.10-slim ENV PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 \ DEBIAN_FRONTEND=noninteractive \ HOME=/home/user \ LOG_FILE=/home/user/app/logs/system.log \ BACKEND_URL=http://localhost:8000 RUN useradd -m -u 1000 user WORKDIR $HOME/app RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ curl \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* RUN mkdir -p logs && \ touch logs/system.log && \ chown -R user:user $HOME/app && \ chmod -R 777 $HOME/app COPY --chown=user:user requirements.txt . RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt COPY --chown=user:user . . USER user ENV PATH=$HOME/.local/bin:$PATH EXPOSE 7860 CMD (PORT=8000 python api_gateway.py &) && \ streamlit run streamlit_app.py \ --server.port=7860 \ --server.address=0.0.0.0 \ --server.enableCORS=false \ --server.enableXsrfProtection=false