Spaces:
Sleeping
Sleeping
| # 🌐 Base image légère avec Python 3.12 | |
| FROM python:3.12-slim | |
| # 🧱 Installer les dépendances système minimales | |
| RUN apt-get update && apt-get install -y \ | |
| build-essential \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # 👤 Créer un utilisateur non-root recommandé pour Hugging Face | |
| RUN useradd -m -u 1000 appuser | |
| # 📁 Définir le répertoire de travail | |
| WORKDIR /app | |
| # 📦 Copier les dépendances | |
| COPY requirements.txt . | |
| # 🐍 Créer un environnement virtuel dédié | |
| RUN python -m venv /opt/venv | |
| ENV PATH="/opt/venv/bin:$PATH" | |
| # 📥 Installer les paquets Python dans le venv | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # 📄 Copier le reste du code source | |
| COPY . . | |
| # 🔐 Définir les permissions | |
| RUN chown -R appuser:appuser /app | |
| # 👤 Passer à l'utilisateur sécurisé | |
| USER appuser | |
| # 🔊 Exposer le port attendu par Hugging Face | |
| EXPOSE 7860 | |
| # 🚀 Commande de démarrage de l'application FastAPI | |
| CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"] | |