FROM python:3.12-slim WORKDIR /app # System deps kept minimal; python-pptx + bs4 are pure-python. ENV PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . # Streamlit config for containers. ENV STREAMLIT_SERVER_PORT=8501 \ STREAMLIT_SERVER_ADDRESS=0.0.0.0 \ STREAMLIT_SERVER_HEADLESS=true \ STREAMLIT_BROWSER_GATHER_USAGE_STATS=false \ MOCK_MODE=true EXPOSE 8501 HEALTHCHECK --interval=30s --timeout=5s --retries=3 \ CMD python -c "import urllib.request; urllib.request.urlopen('http://localhost:8501/_stcore/health')" || exit 1 CMD ["streamlit", "run", "app.py"]