Skip to content

Déploiement VPS via Docker Compose

ElectriCore tourne en production sur un VPS unique avec une stack docker-compose (deploy/docker/) : conteneur API (FastAPI), conteneur bot (Telegram), conteneur scheduler (cron → appels HTTP vers /etl/run), reverse-proxy Caddy avec TLS automatique. Pas d'alternative sérieusement évaluée — c'était l'évidence pour un opérateur solo. PaaS managé écarté (volumes persistants pour DuckDB, mode SFTP collocé), Kubernetes écarté (sur-dimensionné pour 4 conteneurs sur une machine).

Limites à connaître avant un changement d'échelle

  • VPS unique : pas de haute dispo, pas de réplication. Une panne du VPS = indisponibilité totale jusqu'au redémarrage.
  • Volume DuckDB local : la base vit sur le disque du VPS. Sauvegardes nocturnes via EXPORT DATABASE (voir docs/deploiement.md) ; restauration manuelle.
  • Mono-tenant par stack : un déploiement = un fournisseur. Multi-tenant applicatif (1 stack, plusieurs fournisseurs en isolation logique) n'est pas l'approche retenue — cf. ADR-0015, qui acte le modèle « un VPS par instance » pour servir plusieurs fournisseurs.