FROM python:3.10-slim # 1) Installer TeX full, GhostScript, Node.js & ImageMagick RUN apt-get update && \ apt-get install -y --no-install-recommends \ texlive-full \ ghostscript \ libgl1 \ nodejs npm \ imagemagick && \ ln -sf /usr/bin/convert /usr/bin/magick && \ pdflatex --version && convert --version && node -v && \ # patch de la policy pour autoriser PDF -> image sed -i "s@@@" \ /etc/ImageMagick-6/policy.xml && \ apt-get clean && rm -rf /var/lib/apt/lists/* # 2) Copier et installer les dépendances Python WORKDIR /code COPY requirements.txt /code/ RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt # 3) Passage en utilisateur non-root RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH # 4) Copier l’application et exposer le port WORKDIR $HOME/app COPY --chown=user . $HOME/app # 5) Lancement Streamlit sans file watcher CMD ["streamlit", "run", "app.py", \ "--server.port=7860", \ "--server.address=0.0.0.0", \ "--server.runOnSave=false"]