FROM python:3.11-slim

WORKDIR /app

# Install system dependencies for WeasyPrint (PDF generation)
RUN apt-get update && apt-get install -y --no-install-recommends \
    libpango-1.0-0 \
    libpangocairo-1.0-0 \
    libgdk-pixbuf-2.0-0 \
    libffi-dev \
    shared-mime-info \
    && rm -rf /var/lib/apt/lists/*

# Copy project files
COPY pyproject.toml .
COPY src/ src/
COPY config/ config/

# Install package with reports dependencies (for PDF export)
RUN pip install --no-cache-dir -e ".[reports]"

# Create data directory for SQLite and measurements
RUN mkdir -p /app/data/measurements /app/data/reports

# Streamlit configuration
RUN mkdir -p ~/.streamlit
RUN echo '[server]\n\
headless = true\n\
address = "0.0.0.0"\n\
port = 8080\n\
enableXsrfProtection = false\n\
enableCORS = false\n\
\n\
[browser]\n\
gatherUsageStats = false\n' > ~/.streamlit/config.toml

EXPOSE 8080

CMD ["streamlit", "run", "src/py_dvt_ate/app/dashboard/app.py"]
