Skip to content

Server

Berth API est une API REST écrite en Go avec Gin. Elle supervise les applications et conteneurs Docker d’une instance mono-tenant déployée chez chaque client (self-hosted). Chaque installation possède sa base PostgreSQL 18 et son cache Redis 8.10 : il n’y a donc pas de partitionnement multi-tenant à gérer dans le modèle de données.

L’API communique avec :

  • un front Angular 22 via REST et WebSocket/SSE pour les commandes, les vues et les événements temps réel ;
  • des agents Go distants via gRPC pour remonter l’état et exécuter des actions sur les hôtes Docker ;
  • PostgreSQL 18 pour la persistance transactionnelle ;
  • Redis 8.10 comme cache de lecture seule, invalidé après chaque écriture réussie.

Le système applique un CQRS allégé : les commandes modifient l’état, les requêtes le lisent, mais les deux utilisent la même base PostgreSQL. Il n’y a ni event sourcing ni message broker.