QuentinL52 commited on
Commit
286219d
·
verified ·
1 Parent(s): baca7ea

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +26 -25
Dockerfile CHANGED
@@ -1,45 +1,46 @@
1
  FROM python:3.11-slim
2
 
3
- # Variables d'environnement pour Hugging Face
4
  ENV PYTHONUNBUFFERED=1 \
5
- PIP_NO_CACHE_DIR=off \
6
- PIP_DISABLE_PIP_VERSION_CHECK=on \
7
- PIP_DEFAULT_TIMEOUT=100 \
8
- HF_HOME=/app/cache \
9
- TRANSFORMERS_CACHE=/app/cache \
10
- HF_HUB_CACHE=/app/cache/hub \
11
- SENTENCE_TRANSFORMERS_HOME=/app/cache/sentence_transformers \
12
  PYTHONPATH=/app
13
 
 
 
 
 
 
 
 
14
  WORKDIR /app
15
 
 
 
 
 
 
16
  # Installer uv pour des installations plus rapides
17
  RUN pip install uv
18
 
19
- # Copier les requirements et installer les dépendances
20
  COPY requirements.txt .
21
  RUN uv pip install --system --no-cache -r requirements.txt
22
 
23
- # Créer un utilisateur non-root
24
- RUN addgroup --system app && adduser --system --group app
25
-
26
  # Copier le code source
27
  COPY . .
28
- COPY knowledge_base ./knowledge_base
29
-
30
- # Créer les répertoires de cache avec les bonnes permissions
31
- RUN mkdir -p /app/cache/hub \
32
- /app/cache/sentence_transformers \
33
- /app/cache/transformers \
34
- /app/vector_store && \
35
- chown -R app:app /app && \
36
- chmod -R 755 /app/cache
37
 
38
- # Changer vers l'utilisateur non-root APRÈS avoir créé les répertoires
39
- USER app
 
 
 
 
 
40
 
41
- # Exposer le port pour Hugging Face Spaces
42
  EXPOSE 7860
43
 
44
- # Commande de démarrage pour Hugging Face Spaces
45
  CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
  FROM python:3.11-slim
2
 
3
+ # Variables d'environnement pour Hugging Face Spaces
4
  ENV PYTHONUNBUFFERED=1 \
5
+ PYTHONDONTWRITEBYTECODE=1 \
6
+ PIP_NO_CACHE_DIR=1 \
7
+ PIP_DISABLE_PIP_VERSION_CHECK=1 \
 
 
 
 
8
  PYTHONPATH=/app
9
 
10
+ # Variables d'environnement pour les modèles ML
11
+ ENV HF_HOME=/tmp/cache \
12
+ TRANSFORMERS_CACHE=/tmp/cache \
13
+ HF_HUB_CACHE=/tmp/cache/hub \
14
+ SENTENCE_TRANSFORMERS_HOME=/tmp/cache/sentence_transformers
15
+
16
+ # Créer le répertoire de travail
17
  WORKDIR /app
18
 
19
+ # Installer les dépendances système
20
+ RUN apt-get update && apt-get install -y \
21
+ curl \
22
+ && rm -rf /var/lib/apt/lists/*
23
+
24
  # Installer uv pour des installations plus rapides
25
  RUN pip install uv
26
 
27
+ # Copier les requirements et installer les dépendances Python
28
  COPY requirements.txt .
29
  RUN uv pip install --system --no-cache -r requirements.txt
30
 
 
 
 
31
  # Copier le code source
32
  COPY . .
 
 
 
 
 
 
 
 
 
33
 
34
+ # Créer les répertoires nécessaires avec permissions
35
+ RUN mkdir -p /tmp/cache/hub \
36
+ /tmp/cache/sentence_transformers \
37
+ /app/vector_store \
38
+ /app/cache && \
39
+ chmod -R 777 /tmp/cache && \
40
+ chmod -R 755 /app
41
 
42
+ # Exposer le port 7860 (standard HF Spaces)
43
  EXPOSE 7860
44
 
45
+ # Commande de démarrage
46
  CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]