FROM python:3.10-slim

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1

WORKDIR /app

# System deps (optional; keep minimal)
RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
 && rm -rf /var/lib/apt/lists/*

# Install Python deps first for better caching
COPY requirements.txt ./
RUN pip install --upgrade pip && pip install -r requirements.txt

# Copy source
COPY . .
RUN mkdir -p /data && chmod 777 /data

# Spaces exposes $PORT (defaults to 7860)
# Persist SQLite DB in /data on Spaces
ENV PORT=7860 \
    RECS_DB_PATH=/data/recommender_system.db

EXPOSE 7860

RUN chmod +x start.sh

# Launch HTTP MCP server (FastMCP HTTP transport)
CMD ["./start.sh"]
