FROM python:3.10-slim WORKDIR /app # Install system dependencies RUN apt-get update && apt-get install -y \ libglib2.0-0 \ libsm6 \ libxext6 \ libxrender-dev \ libgomp1 \ && rm -rf /var/lib/apt/lists/* # Copy ML requirements COPY ml/requirements.txt /app/ml/requirements.txt RUN pip install --no-cache-dir -r /app/ml/requirements.txt # Copy backend requirements COPY backend/requirements.txt /app/backend/requirements.txt RUN pip install --no-cache-dir -r /app/backend/requirements.txt # Copy application code COPY ml/ /app/ml/ COPY backend/ /app/backend/ # Create directories RUN mkdir -p /app/ml/models /app/ml/data/retraining # Expose port EXPOSE 8000 # Health check HEALTHCHECK --interval=30s --timeout=10s --start-period=40s --retries=3 \ CMD python -c "import requests; requests.get('http://localhost:8000/health')" # Run application CMD ["python", "backend/inference_service.py"]