# Image de base minuscule : Python sur Alpine Linux (~50 Mo une fois construite) FROM python:3.12-alpine # Version de l'image, transmise au build via docker-compose.yml (source : .env). # Valeur par défaut « dev » si le build est lancé sans la fournir. ARG VERSION=dev LABEL org.opencontainers.image.version="${VERSION}" WORKDIR /app # On installe les dépendances en premier pour profiter du cache de build COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Le code de l'application : le script Python et la page HTML (à la racine). COPY app.py index.html ./ # Dossier où vivra la base SQLite. Il est monté depuis l'extérieur via le # volume défini dans docker-compose.yml. ENV DATA_DIR=/data EXPOSE 5000 CMD ["python", "app.py"]