# 1. Use your exact requested Python version FROM python:3.13.4-slim # 2. Set environment variables ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 ENV PORT=7860 # 3. Set the working directory WORKDIR /app # 4. Install OS-level dependencies # (REMOVED Chromium! Just keeping the essentials needed to compile Python 3.13 packages) RUN apt-get update && apt-get install -y \ build-essential \ wget \ curl \ && rm -rf /var/lib/apt/lists/* # 5. Copy the requirements file COPY f_requirements.txt . # 6. Install Python dependencies # Selenium will install here as a harmless "dummy" library since it's never called. RUN pip install --upgrade pip && \ pip install --no-cache-dir -r f_requirements.txt # 7. Download required NLTK data for the CV Analyzer fallback RUN python -c "import nltk; nltk.download('stopwords'); nltk.download('punkt'); nltk.download('punkt_tab')" # 8. Copy the entire jumbled repository into the container COPY . . # 9. Create runtime directories and grant write permissions RUN mkdir -p .runtime/uploads/cvs .runtime/uploads/jobs .runtime/uploads/session_state && \ chmod -R 777 .runtime # 10. Expose the Hugging Face port EXPOSE 7860 # 11. Run your React-compatible Flask app CMD ["python", "app_new.py"]