Le backend FastAPI sert déjà le SPA buildé : on abandonne le duo nginx + backend au profit d'une seule image multi-stage (build Vue puis service par le backend). docker-compose passe à un service unique, avec PLESNA_DATA_DIR déclarant le stockage persistant. - backend.Dockerfile : stage node build -> copie frontend/dist, CMD en `uv run --no-sync` (plus de resync des deps dev au démarrage) - docker-compose.yml : service unique `app`, volume ./data, PLESNA_DATA_DIR=/app/data - supprime frontend/Dockerfile, frontend/nginx.conf, frontend/.dockerignore - .dockerignore : ignore **/node_modules, data, data_bck - README : section Production mise à jour Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
17 lines
508 B
YAML
17 lines
508 B
YAML
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: backend.Dockerfile
|
|
ports:
|
|
# hôte:conteneur — l'app (API + interface web) écoute sur 8000
|
|
- "8080:8000"
|
|
volumes:
|
|
# Persiste base SQLite + documents hors du conteneur.
|
|
- ./data:/app/data
|
|
environment:
|
|
# Déclare l'emplacement des données ; get_data_dir() en dérive
|
|
# database.sqlite et documents/ (cf. src/plesna_gerance/paths.py).
|
|
- PLESNA_DATA_DIR=/app/data
|
|
restart: unless-stopped
|