FROM python:3.11-slim

WORKDIR /app

# Install system deps for scraping (lxml, etc.)
RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    && rm -rf /var/lib/apt/lists/*

# Copy the MENTORR package source for pipeline imports
COPY src/ /app/src/
COPY pyproject.toml /app/
COPY README.md /app/

# Install the MENTORR package + API deps
RUN pip install --no-cache-dir ".[all]" \
    && pip install --no-cache-dir fastapi uvicorn[standard]

# Copy the API server and knowledge files
COPY custom_gpt/api_server.py /app/api_server.py
COPY custom_gpt/knowledge/ /app/knowledge/

# Create data directory
RUN mkdir -p /data/projects /data/processed /data/raw /data/lab_inbox /data/lab_processed

ENV MENTORR_DATA_DIR=/data
ENV PORT=8080

EXPOSE 8080

CMD ["uvicorn", "api_server:app", "--host", "0.0.0.0", "--port", "8080"]
