# Use official lightweight Python 3.10 image
FROM python:3.10-slim

# Set working directory inside the container
WORKDIR /app

# Copy and install dependencies first for caching
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt

# Copy the entire project
COPY . .

# Declare a volume for output files so they can be accessed on the host
VOLUME ["/app/results"]

# Define the entrypoint to allow passing CLI arguments easily
ENTRYPOINT ["python", "src/main.py"]
