FROM python:3.11-slim # Set working directory WORKDIR /app # Install system dependencies RUN apt-get update && apt-get install -y \ gcc \ && rm -rf /var/lib/apt/lists/* # Copy requirements first for better caching COPY requirements.txt . # Install Python dependencies RUN pip install --no-cache-dir -r requirements.txt # Copy the application code COPY src/ ./src/ # Create necessary directories RUN mkdir -p src/database # Set environment variables ENV FLASK_APP=src/main.py ENV FLASK_ENV=production ENV PYTHONPATH=/app # Expose port (Hugging Face Spaces uses port 7860) EXPOSE 7860 # Create a non-root user for security RUN useradd -m -u 1000 appuser && chown -R appuser:appuser /app USER appuser # Command to run the application CMD ["python", "src/main.py"]