Docker : base SQLite en bind mount (accès direct sur l'hôte)

Remplace le volume nommé Docker (trajets-data) par un bind mount ./data:/data,
afin d'accéder au fichier de base sans entrer dans le conteneur (inspection,
sauvegarde).

- docker-compose.yml : volumes backend -> ./data:/data ; déclaration du volume
  nommé retirée.
- .gitignore / .dockerignore : exclusion du dossier data/ (base jamais versionnée
  ni envoyée au contexte de build).
- design.md : références bind mount + nouvelle section « Accès à la base de
  données » (inspection, sauvegarde à froid, migration depuis l'ancien volume).
- run-docker.sh supprimé : script obsolète (ancienne archi, contexte de build et
  port périmés) et redondant avec docker compose v2 désormais disponible.

Déploiement validé : docker compose up -d --build fonctionne, base montée depuis
l'hôte.
This commit is contained in:
2026-09-20 19:31:49 +02:00
parent 259d9e16a2
commit e84c2356f1
5 changed files with 49 additions and 105 deletions
+4 -4
View File
@@ -22,7 +22,10 @@ services:
- Smtp__Password=${SMTP_PASSWORD:-}
- Smtp__From=${SMTP_FROM:-}
volumes:
- trajets-data:/data
# Bind mount : la base SQLite est directement accessible sur l'hôte dans ./data/trajets.db,
# sans entrer dans le conteneur (inspection, sauvegarde). Le dossier ./data est créé au
# premier démarrage s'il n'existe pas.
- ./data:/data
restart: unless-stopped
# Healthcheck sur GET /health. curl est installé dans l'image backend (voir Dockerfile).
healthcheck:
@@ -42,6 +45,3 @@ services:
backend:
condition: service_healthy
restart: unless-stopped
volumes:
trajets-data: # persistance SQLite au-delà du cycle de vie des conteneurs