# Dockerfile — minimal, validated, uses python:3.11-slim and a single-line CMD FROM python:3.11-slim ENV DEBIAN_FRONTEND=noninteractive \ PYTHONUNBUFFERED=1 \ STREAMLIT_SERVER_HEADLESS=true \ STREAMLIT_SERVER_RUN_ON_SAVE=false \ STREAMLIT_SERVER_ENABLECORS=false \ STREAMLIT_SERVER_PORT=8501 \ STREAMLIT_SERVER_ADDRESS=0.0.0.0 WORKDIR /app RUN apt-get update && apt-get install -y --no-install-recommends libgomp1 ca-certificates && rm -rf /var/lib/apt/lists/* COPY . /app RUN python -m pip install --upgrade pip setuptools wheel RUN pip install --no-cache-dir -r requirements.txt RUN useradd -m -u 1000 user USER user ENV HOME=/home/user PATH=/home/user/.local/bin:$PATH WORKDIR $HOME/app RUN cp -r /app/* $HOME/app/ || true EXPOSE 8501 # Single-line JSON array CMD — avoids Dockerfile parse pitfalls CMD ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0", "--server.headless=true", "--server.runOnSave=false", "--server.enableCORS=false", "--server.enableXsrfProtection=false", "--logger.level=debug"]