DL_FINAL_EXAMEN / Dockerfile
Your NameBOLLO22
Ajout du projet complet de BOLLO
c6b0fdb
Raw
History Blame Contribute Delete
878 Bytes
# Image légère et stable ; Python 3.11 respecte le prérequis Python >= 3.9.
FROM python:3.11-slim
# Tous les chemins suivants sont relatifs à /app dans le conteneur.
WORKDIR /app
# ffmpeg est requis par librosa/audioread pour décoder les fichiers MP3 annoncés par l'API.
RUN apt-get update \
&& apt-get install --no-install-recommends -y ffmpeg \
&& rm -rf /var/lib/apt/lists/*
# Copier puis installer les dépendances avant le code optimise le cache de construction Docker.
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Le reste du projet est ajouté après les dépendances, car il change plus souvent.
COPY . .
# Documente le port exposé par Uvicorn ; docker-compose le publie vers la machine hôte.
EXPOSE 8000
# Démarre l'API REST au lancement du conteneur.
CMD ["uvicorn", "api:app", "--host", "0.0.0.0", "--port", "8000"]