madibaalbert commited on
Commit
4f67781
·
verified ·
1 Parent(s): 127909b

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +18 -12
Dockerfile CHANGED
@@ -1,30 +1,36 @@
1
- # Utiliser l'image officielle Ollama
2
  FROM ollama/ollama:latest
3
 
4
  # Configuration des variables d'environnement
5
- # Hugging Face Spaces tourne sur l'utilisateur 1000
6
  ENV OLLAMA_HOST=0.0.0.0
7
  ENV OLLAMA_MODELS=/data/models
8
  ENV HOME=/app
9
 
10
  WORKDIR /app
11
 
12
- # Création du répertoire de données avec les bonnes permissions
13
  RUN mkdir -p /data/models && chmod -R 777 /data/models
14
 
15
- # On réinitialise l'ENTRYPOINT pour éviter que Docker ne passe /start.sh à ollama
 
 
 
 
 
 
 
 
 
 
16
  ENTRYPOINT []
17
 
18
- # Création du script de démarrage directement dans le Dockerfile
19
  RUN echo '#!/bin/bash \n\
20
- ollama serve & \n\
21
- sleep 10 \n\
22
- echo "📥 Téléchargement du modèle Mistral-Nemo..." \n\
23
- ollama run mistral-nemo \n\
24
- wait' > /app/start.sh && chmod +x /app/start.sh
25
 
26
- # Exposer le port par défaut (Hugging Face mappe automatiquement 7860)
27
  EXPOSE 7860
28
 
29
- # Lancer le script via le shell
30
  CMD ["/bin/bash", "/app/start.sh"]
 
1
+ # Utiliser l'image officielle Ollama pour le build
2
  FROM ollama/ollama:latest
3
 
4
  # Configuration des variables d'environnement
 
5
  ENV OLLAMA_HOST=0.0.0.0
6
  ENV OLLAMA_MODELS=/data/models
7
  ENV HOME=/app
8
 
9
  WORKDIR /app
10
 
11
+ # Création du répertoire de données avec les bonnes permissions pour HF (User 1000)
12
  RUN mkdir -p /data/models && chmod -R 777 /data/models
13
 
14
+ # --- PHASE DE PRE-CHARGEMENT ---
15
+ # On lance temporairement ollama pour télécharger le modèle durant le build
16
+ # Cela évite le timeout de 30min au lancement du Space
17
+ RUN ollama serve & \
18
+ sleep 5 && \
19
+ ollama pull mistral-nemo
20
+
21
+ # Nettoyage des caches inutiles pour réduire la taille de l'image si besoin
22
+ # (Optionnel sur HF car ils ont de l'espace disque de build)
23
+
24
+ # On réinitialise l'ENTRYPOINT
25
  ENTRYPOINT []
26
 
27
+ # Script de démarrage simplifié car le modèle est déjà là
28
  RUN echo '#!/bin/bash \n\
29
+ echo "🚀 Démarrage de Pangea AI Engine..." \n\
30
+ ollama serve' > /app/start.sh && chmod +x /app/start.sh
 
 
 
31
 
32
+ # Port standard HF
33
  EXPOSE 7860
34
 
35
+ # Lancer via bash
36
  CMD ["/bin/bash", "/app/start.sh"]