Spaces:
Sleeping
Sleeping
Update Dockerfile
Browse files- Dockerfile +20 -10
Dockerfile
CHANGED
@@ -29,27 +29,37 @@
|
|
29 |
# # Spécifier la commande par défaut pour lancer le serveur FastAPI sur le port 7860 (pour Hugging Face)
|
30 |
# CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|
31 |
|
32 |
-
|
33 |
-
# Dockerfile
|
34 |
-
|
35 |
FROM python:3.11
|
36 |
|
37 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
RUN useradd -m -u 1000 user
|
39 |
|
|
|
40 |
WORKDIR /app
|
41 |
|
42 |
-
# Copier le fichier requirements.txt
|
43 |
COPY --chown=user ./requirements.txt requirements.txt
|
44 |
-
|
45 |
-
# Installer les dépendances
|
46 |
RUN pip install --no-cache-dir --upgrade -r requirements.txt
|
47 |
|
48 |
-
# Copier tous les fichiers
|
49 |
COPY --chown=user . /app
|
50 |
|
51 |
-
# Copier le fichier .env dans le conteneur
|
|
|
52 |
COPY .env .env
|
53 |
|
54 |
-
#
|
|
|
|
|
|
|
|
|
55 |
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|
|
|
29 |
# # Spécifier la commande par défaut pour lancer le serveur FastAPI sur le port 7860 (pour Hugging Face)
|
30 |
# CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|
31 |
|
32 |
+
# Utiliser l'image Python officielle avec la version 3.11
|
|
|
|
|
33 |
FROM python:3.11
|
34 |
|
35 |
+
# Installer les bibliothèques nécessaires pour OpenCV, y compris libGL.so.1
|
36 |
+
RUN apt-get update && apt-get install -y \
|
37 |
+
libgl1-mesa-glx \
|
38 |
+
libglib2.0-0 \
|
39 |
+
libsm6 \
|
40 |
+
libxext6 \
|
41 |
+
libxrender-dev
|
42 |
+
|
43 |
+
# Créer un utilisateur non-root pour plus de sécurité
|
44 |
RUN useradd -m -u 1000 user
|
45 |
|
46 |
+
# Définir le répertoire de travail
|
47 |
WORKDIR /app
|
48 |
|
49 |
+
# Copier le fichier requirements.txt et installer les dépendances
|
50 |
COPY --chown=user ./requirements.txt requirements.txt
|
|
|
|
|
51 |
RUN pip install --no-cache-dir --upgrade -r requirements.txt
|
52 |
|
53 |
+
# Copier tous les autres fichiers de l'application dans le conteneur
|
54 |
COPY --chown=user . /app
|
55 |
|
56 |
+
# Copier le fichier .env dans le conteneur (optionnel)
|
57 |
+
# Cela permettra de charger les variables depuis le fichier `.env` pendant l'exécution du conteneur
|
58 |
COPY .env .env
|
59 |
|
60 |
+
# Définir l'utilisateur non-root pour exécuter les commandes suivantes
|
61 |
+
USER user
|
62 |
+
ENV PATH="/home/user/.local/bin:$PATH"
|
63 |
+
|
64 |
+
# Spécifier la commande par défaut pour lancer le serveur FastAPI sur le port 7860 (pour Hugging Face)
|
65 |
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|