24 lines
773 B
Docker
24 lines
773 B
Docker
# 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"]
|