File size: 1,613 Bytes
2af256f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4aa918f
2af256f
 
 
32db5c3
2af256f
 
 
 
 
 
 
 
 
4aa918f
 
 
 
2af256f
4aa918f
2af256f
 
4aa918f
 
2af256f
4aa918f
9614b68
2af256f
 
32db5c3
2af256f
33a7b22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# # Utiliser l'image Python officielle avec la version 3.11
# FROM python:3.11

# # Installer les bibliothèques nécessaires pour OpenCV, y compris libGL.so.1
# RUN apt-get update && apt-get install -y \
#     libgl1-mesa-glx \
#     libglib2.0-0 \
#     libsm6 \
#     libxext6 \
#     libxrender-dev

# # Créer un utilisateur non-root pour plus de sécurité
# RUN useradd -m -u 1000 user

# # Définir le répertoire de travail
# WORKDIR /app

# # Copier le fichier requirements.txt et installer les dépendances
# COPY --chown=user ./requirements.txt requirements.txt
# RUN pip install --no-cache-dir --upgrade -r requirements.txt

# # Copier tous les autres fichiers de l'application dans le conteneur
# COPY --chown=user . /app

# # Définir l'utilisateur non-root pour exécuter les commandes suivantes
# USER user
# ENV PATH="/home/user/.local/bin:$PATH"

# # Spécifier la commande par défaut pour lancer le serveur FastAPI sur le port 7860 (pour Hugging Face)
# CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]


# Dockerfile

FROM python:3.11

# Créer un utilisateur non-root
RUN useradd -m -u 1000 user

WORKDIR /app

# Copier le fichier requirements.txt pour installer les dépendances
COPY --chown=user ./requirements.txt requirements.txt

# Installer les dépendances
RUN pip install --no-cache-dir --upgrade -r requirements.txt

# Copier tous les fichiers nécessaires dans l'image Docker
COPY --chown=user . /app

# Copier le fichier .env dans le conteneur
COPY .env .env

# Lancer l'application avec Uvicorn
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]