# Dockerfile
FROM python:3.12-slim

WORKDIR /app

# Install dependencies
# We copy requirements first to leverage Docker layer caching
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Copy application code and metadata
COPY main.py .
COPY metadata.csv .

# Expose the internal port (for documentation/local debugging)
EXPOSE 8000

# Command to run the app
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "4"]