Spaces:
Sleeping
Sleeping
Download Dockerfile from DidierHernandez/p14: direct link, hf CLI and curl.
- Browser
- Download file 2.24 kB
-
https://huggingface.co/spaces/DidierHernandez/p14/resolve/main/Dockerfile
- Command line
-
hf download hf://spaces/DidierHernandez/p14/Dockerfile
-
curl -L -o Dockerfile https://huggingface.co/spaces/DidierHernandez/p14/resolve/main/Dockerfile
2.24 kB
| # Ce fichier Dockerfile dans le dossier racine du projet14 objectif1 poc/ | |
| # Fichier adapté pour faire fonctionner sur HF Spaces. | |
| # Résolution des désalignements : Abandon complet de l'arborescence src/ obsolète, | |
| # Didier : mise en commentaires de HEALTHCHECK car non compatible HF Spaces | |
| # intégration de l'index FAISS local et routage impératif sur le port standardisé 7860 | |
| FROM python:3.13.5-slim | |
| # Configuration des variables d'environnement pour Python et Streamlit | |
| ENV PYTHONUNBUFFERED=1 \ | |
| PYTHONDONTWRITEBYTECODE=1 \ | |
| STREAMLIT_SERVER_PORT=7860 \ | |
| STREAMLIT_SERVER_ADDRESS=0.0.0.0 \ | |
| STREAMLIT_SERVER_HEADLESS=true | |
| WORKDIR /app | |
| # Installation des dépendances système nécessaires | |
| RUN apt-get update && apt-get install -y \ | |
| build-essential \ | |
| curl \ | |
| git \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Didier : Préparation des répertoires de l'arborescence réelle de poc/ | |
| # Création préalable pour sécuriser les droits d'écriture des logs et de Streamlit sur HF | |
| RUN mkdir -p /app/data /app/utils /app/corpus /app/pages /app/.streamlit | |
| # Étape 1 : Copie et installation des dépendances Python | |
| COPY requirements.txt ./ | |
| RUN pip3 install --no-cache-dir -r requirements.txt | |
| # Étape 2 : Copie chirurgicale calquée sur l'arborescence réelle de poc/ (sans mention de src/) | |
| # On copie les scripts principaux de l'interface validés en local | |
| COPY streamlit_app.py ./ | |
| COPY MistralChat.py ./ | |
| # On copie les modules du Socle Technique Unique et de Configuration | |
| COPY utils/ ./utils/ | |
| # Didier : Ingestion de l'index FAISS pré-généré localement (< 2 Mo) pour le rendre immortel sur Git | |
| COPY data/ ./data/ | |
| # Copie du corpus de connaissances Markdown et des pages secondaires (Feedback Viewer) | |
| COPY corpus/ ./corpus/ | |
| COPY pages/ ./pages/ | |
| # Exposition du port unique et obligatoire exigé par Hugging Face Spaces | |
| EXPOSE 7860 | |
| # Vérification de l'état de santé du conteneur réalignée sur le port de production 7860 | |
| #HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \ | |
| # CMD curl --fail http://localhost:7860/_stcore/health || exit 1 | |
| # Didier : Lancement officiel de l'interface Métier unifiée sur le port requis par HF | |
| ENTRYPOINT ["streamlit", "run", "streamlit_app.py"] |