Spaces:
Sleeping
Sleeping
| # ------------------------- | |
| # Base image | |
| # ------------------------- | |
| FROM python:3.11-slim | |
| # ------------------------- | |
| # Working directory | |
| # ------------------------- | |
| WORKDIR /app | |
| # ------------------------- | |
| # Python buffer settings | |
| # ------------------------- | |
| ENV PYTHONUNBUFFERED=1 \ | |
| PYTHONPATH="/app" \ | |
| PORT=7860 \ | |
| DATA_FOLDER="/app/docs" | |
| # ------------------------- | |
| # Install system dependencies | |
| # ------------------------- | |
| RUN apt-get update && apt-get install -y \ | |
| curl git build-essential && \ | |
| rm -rf /var/lib/apt/lists/* | |
| # ------------------------- | |
| # Install Python deps FIRST (cache) | |
| # ------------------------- | |
| COPY requirements.txt . | |
| RUN pip install --no-cache-dir --upgrade pip && \ | |
| pip install --no-cache-dir -r requirements.txt | |
| # ------------------------- | |
| # Copy entire project | |
| # ------------------------- | |
| COPY . . | |
| # ------------------------- | |
| # Debug: list /app/docs & warn about big files | |
| # ------------------------- | |
| RUN echo ">>> /app/docs contents (if any) <<<" && \ | |
| if [ -d "/app/docs" ]; then ls -la /app/docs || true; else echo "/app/docs not found"; fi && \ | |
| echo ">>> Checking for files larger than 100MB <<<" && \ | |
| if [ -d "/app" ]; then find /app -type f -size +100M -exec ls -lh {} \; || true; else echo "no /app dir"; fi | |
| # ------------------------- | |
| # Make start.sh executable | |
| # ------------------------- | |
| RUN chmod +x /app/start.sh | |
| # ------------------------- | |
| # Expose Streamlit port | |
| # ------------------------- | |
| EXPOSE 7860 | |
| # ------------------------- | |
| # Start the full system | |
| # ------------------------- | |
| CMD ["bash", "/app/start.sh"] | |