vitizen_websocket / Dockerfile
thibautmodrin's picture
websocket api
3bdd855
raw
history blame contribute delete
996 Bytes
# 🌐 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"]