Supabase en auto-hébergement
Une série en sept parties sur l'auto-hébergement de Supabase sur un seul VPS Hetzner. Durcissement SSH, Traefik, Docker Swarm, secrets Vault, isolation multi-instance, détection d'intrusion Falco et tests de charge k6. Du premier docker stack deploy à trois projets sur une seule machine.
La série
Pourquoi auto-héberger Supabase
Pourquoi auto-héberger Supabase quand le plan gratuit offre déjà deux projets ? Pour comprendre ce que le service managé fait à votre place.
7 min de lectureLe serveur
Mise en place d’un VPS Hetzner CX22 avec durcissement SSH, pare-feu ufw, fail2ban et Docker Swarm.
6 min de lectureTraefik et HTTPS
Configuration de Traefik en reverse proxy avec certificats Let’s Encrypt automatiques et en-têtes de sécurité.
7 min de lectureLa première instance Supabase
Déploiement de PostgreSQL, Kong, GoTrue, PostgREST, Realtime, Storage et Studio sous forme de stack Docker Swarm.
14 min de lectureVault, et l'après-midi où j'ai tout effacé
Sortir les secrets des fichiers .env pour les confier à HashiCorp Vault, avec un script de récupération pour Docker Swarm.
8 min de lectureDeux instances
Faire tourner une deuxième instance Supabase entièrement isolée sur le même serveur, avec un routage Traefik partagé.
5 min de lectureSécurité et test de charge
Audit de sécurité avec détection d’intrusion Falco, et tests de charge k6 pour trouver les limites du serveur.
9 min de lectureAnnexe : tests de charge
Résultats du test d’endurance
Test d’endurance de 58 minutes avec 30 utilisateurs virtuels : résultats de charge soutenue sur le CX22.
7 min de lectureRésultats du test de charge bi-projet
Test de charge simultané sur deux projets : 30 VUs répartis entre deux piles Supabase.
6 min de lectureRésultats du test de charge tri-projet
Test de charge tri-projet : pousser le CX22 pour trouver le plafond mémoire.
7 min de lecture