ONDEV Logo

Agence web fondée en 2020 à Marseille par Mathieu Rabissoni, développeur web. Sites et applications sur-mesure, codés et maintenus par celui qui vous répond.

Services
  • Création de Sites Web
  • Applications Sur-Mesure
  • Publicité Digitale
  • Référencement SEO
  • Développeur Web Marseille
  • Création de Logo
  • Design UX/UI
  • Refonte d'Application
  • Maintenance Applicative
  • Audit de Code
  • Agence Vibe Coding
  • Logiciel Métier Sur-Mesure
  • Agence No Code
  • Portail Client & Extranet
  • Intranet Sur-Mesure
  • Refonte Site WordPress
  • Migration Angular vers React
Navigation
  • Accueil
  • Agence web à Marseille
  • Réalisations
  • Expertise
  • Qui sommes-nous
  • Blog
  • Contact
Guides
  • Nos guides
  • Comment créer un site internet
  • Pourquoi créer un site internet
  • Coût d'un site internet
  • Choisir son prestataire web
Contact

Mathieu Rabissoni

06 01 37 20 21WhatsAppmathieu@ondev.fr

Marseille, France

Suivez-nous

LinkedInInstagramFacebook
Zones d'intervention
Marseille|Aix-en-Provence|Aubagne|La Ciotat|Cassis|Allauch|Gardanne|Marignane|Vitrolles|Toutes nos zones

© 2026 ONDEV. Tous droits réservés.

Mentions légalesPolitique de confidentialitéPlan du site
ONDEV Logo
Réalisations
Contact
On en discute

Expertise

Création de Sites WebSite Vitrine MarseilleSite E-Commerce MarseilleRéférencement SEOOptimisation GEOApplications Web & MobileAgence CommunicationPublicité en LigneDéveloppeur Web Marseille
Réalisations

Ressources

Qui sommes-nous ?BlogGuides
Contact
AppelerWhatsApp
On en discute
  1. Accueil
  2. Blog
  3. Supabase self-hosted : l'héberger avec Docker
Développement
24 octobre 202612 mn

Supabase self-hosted : l'héberger avec Docker

Supabase self-hosted : prérequis serveur, Docker Compose, réglages GoTrue, mises à jour et checklist de production pour héberger Supabase soi-même.

Mathieu Rabissoni

Mathieu Rabissoni

Fondateur et développeur web d'ONDEV

Supabase self-hosted : l'héberger avec Docker
Supabase self-hosted : l'héberger avec Docker

Sommaire

01.Vos données clients hébergées chez vous plutôt que dans un datacenter à l'autre bout du monde : c'est possible.02.Pourquoi héberger Supabase soi-même03.Souveraineté des données04.Conformité RGPD05.Contrôle des coûts à grande échelle06.Comment héberger Supabase avec Docker07.Prérequis : quel serveur pour Supabase self-hosted08.Les services à lancer09.Docker Compose en pratique10.GoTrue en self-hosting : les réglages Auth qui changent11.L'alternative Coolify pour éviter le Docker Compose brut12.Les contraintes du self-hosting à anticiper13.Maintenance et supervision14.Sauvegardes15.Mises à jour16.Sécurité17.Cloud vs self-hosted : la grille de décision18.Checklist avant de mettre Supabase self-hosted en production19.L'accompagnement ONDEV pour votre Supabase self-hosted20.FAQ : héberger Supabase soi-même21.Conclusion : la souveraineté a un prix, ONDEV le rend accessible

Vos données clients hébergées chez vous plutôt que dans un datacenter à l'autre bout du monde : c'est possible.

Supabase Cloud est parfait pour démarrer, mais au-delà d'un certain volume la facture grimpe et vos données quittent votre infrastructure. Le self-hosting résout les deux problèmes : Supabase est 100% open source, et une instance Supabase self-hosted se déploie en une poignée de commandes Docker. Résultat : vos données restent chez vous et, à grande échelle, la facture devient fixe et prévisible.

Dans cet article, vous allez découvrir :

  • •Pourquoi héberger Supabase soi-même renforce la souveraineté de vos données et votre conformité RGPD
  • •Comment lancer la stack complète avec Docker Compose en moins de 30 minutes
  • •Les 4 contraintes de maintenance que personne ne vous explique avant de vous lancer
  • •La grille de décision cloud vs self-hosted pour trancher sans regret
  • •La checklist en 7 points à valider avant de passer votre Supabase self-hosted en production
Supabase est distribué sous licence Apache 2.0 : vous pouvez l'héberger où vous voulez, sans limite d'usage et sans royalties.

Pourquoi héberger Supabase soi-même

Le self-hosting n'est pas un caprice de puriste. C'est une décision stratégique qui répond à trois besoins concrets : la souveraineté, la conformité et le coût.

Souveraineté des données

Quand vous utilisez Supabase Cloud, vos données vivent sur une infrastructure gérée par un tiers. En self-hosting, la base PostgreSQL, les fichiers Storage et les logs restent sur votre serveur, dans le pays et le datacenter de votre choix.

Pour un secteur régulé (santé, finance, secteur public), c'est souvent non négociable. Vous gardez la main sur qui accède physiquement à la machine et sur la localisation exacte des données.

Conformité RGPD

Héberger en Europe, sur un serveur que vous contrôlez, simplifie radicalement votre analyse RGPD. Pas de transfert hors UE à justifier, pas de sous-traitant supplémentaire à cartographier dans votre registre des traitements.

Vous maîtrisez le chiffrement au repos, la durée de rétention et les procédures de suppression. C'est un argument fort face à un DPO ou lors d'un audit.

Contrôle des coûts à grande échelle

Supabase Cloud facture la base active, le stockage, la bande passante et les Edge Functions. Tant que vous êtes petit, c'est imbattable. Mais quand le trafic explose, le modèle par usage peut devenir cher.

En self-hosting, vous payez un serveur à prix fixe. Un VPS costaud ou une machine dédiée coûte quelques dizaines à quelques centaines d'euros par mois, quel que soit le nombre de requêtes. Pour comprendre où bascule l'équilibre, notre article sur les prix et tarifs de Supabase détaille chaque poste de facturation du cloud. Si c'est surtout la base PostgreSQL que vous voulez externaliser à prix serré, notre comparatif Supabase vs Neon éclaire une troisième voie.

Pour tout comprendre de la plateforme avant de vous lancer, consultez aussi notre guide complet sur Supabase.

Comment héberger Supabase avec Docker

Supabase n'est pas un logiciel unique : c'est un ensemble de services open source orchestrés ensemble. La méthode officielle de self-hosting repose sur Docker Compose, qui lance tous ces services d'un coup.

Prérequis : quel serveur pour Supabase self-hosted

Avant de lancer la moindre commande, il faut une machine correctement dimensionnée. PostgreSQL, Kong, Realtime et Storage tournent en parallèle et consomment de la mémoire dès le démarrage.

UsageRAMCPUDisque
Test et développement4 Go2 vCPU40 Go SSD
Petite production8 Go4 vCPU80 Go SSD
Production avec trafic16 Go et plus4 à 8 vCPU160 Go SSD et plus, sauvegardes externes
Côté hébergeur, un VPS ou un serveur dédié chez un acteur européen (Hetzner, OVHcloud, Scaleway) répond à la fois au besoin de performance et à l'exigence RGPD de localisation des données dans l'Union européenne. Docker et Docker Compose doivent être installés, et les ports 80 et 443 ouverts pour le reverse proxy.

Les services à lancer

Voici les briques que compose Supabase et leur rôle. Comprendre ce découpage est essentiel pour diagnostiquer un problème plus tard.

ServiceRôleImage Docker
PostgreSQLBase de données (le cœur)supabase/postgres
Auth (GoTrue)Authentification et gestion des utilisateurssupabase/gotrue
PostgRESTAPI REST auto-générée depuis le schéma SQLpostgrest/postgrest
RealtimeWebsockets et écoute des changements en temps réelsupabase/realtime
StorageStockage de fichiers avec règles d'accèssupabase/storage-api
KongPasserelle API qui route et sécurise le trafickong
StudioInterface d'administration graphiquesupabase/studio
Edge FunctionsExécution de fonctions Denosupabase/edge-runtime
SupavisorPooler de connexions PostgreSQLsupabase/supavisor

Docker Compose en pratique

Le démarrage tient en quelques commandes. Vous clonez le dépôt officiel, copiez le fichier d'environnement, puis lancez la stack.

bash
git clone --depth 1 https://github.com/supabase/supabase
cd supabase/docker
cp .env.example .env
docker compose up -d

Une fois la stack lancée, le Studio est accessible sur le port configuré et l'API passe par Kong. Avant toute mise en production, trois réglages sont impératifs :

  • •Remplacer tous les secrets par défaut du fichier .env (mots de passe Postgres, clés JWT, identifiants du dashboard)
  • •Placer un reverse proxy (Nginx, Caddy, Traefik) devant Kong pour gérer le HTTPS
  • •Restreindre l'accès au Studio (VPN, authentification, filtrage IP)

La logique de sécurité applicative reste la même que sur le cloud. Vos règles d'accès aux données s'appuient toujours sur le Row Level Security de Supabase, à activer sur chaque table sensible.

GoTrue en self-hosting : les réglages Auth qui changent

GoTrue est le service d'authentification de Supabase. Sur le cloud, il est préconfiguré ; en self-hosting, quatre points sont à votre charge dans le fichier .env :

  • •SMTP : sans serveur mail configuré, aucun e-mail de confirmation, de magic link ou de réinitialisation de mot de passe ne part. Renseignez un fournisseur transactionnel (Brevo, Postmark, Resend) et vérifiez l'expéditeur.
  • •SITE_URL et redirections autorisées : l'URL publique de votre application doit être déclarée, sinon les liens de confirmation renvoient vers localhost.
  • •JWT_SECRET : il signe tous les tokens. Il doit être régénéré (au moins 32 caractères) et partagé à l'identique avec PostgREST et Realtime, faute de quoi l'API refuse les requêtes authentifiées. Les clés anon et service_role doivent ensuite être générées à partir de ce nouveau secret.
  • •Fournisseurs OAuth : chaque connexion Google, GitHub ou Apple doit être déclarée avec ses identifiants et son URL de callback pointant vers votre domaine.

La logique côté application ne change pas : notre guide Supabase Auth reste valable, seules les variables d'environnement diffèrent.

L'alternative Coolify pour éviter le Docker Compose brut

Si vous ne voulez pas maintenir le fichier Compose à la main, Coolify (open source) propose Supabase en un clic sur votre propre VPS : il génère les secrets, place un reverse proxy HTTPS (Traefik par défaut) devant la stack et gère les redémarrages. Vous gardez la souveraineté des données, avec une couche d'exploitation plus confortable.

Le revers : une dépendance à un outil supplémentaire à mettre à jour, et une personnalisation plus limitée que le Compose officiel. Pour une équipe sans DevOps, c'est souvent le bon compromis ; pour une production exigeante, le Compose officiel reste la référence.

Les contraintes du self-hosting à anticiper

Héberger soi-même, c'est reprendre à sa charge tout ce que Supabase Cloud gère silencieusement pour vous. Voici les quatre chantiers à ne jamais négliger.

Maintenance et supervision

Un serveur qui héberge une base de production doit être surveillé : espace disque, mémoire, charge CPU, disponibilité des conteneurs. Il faut mettre en place du monitoring (uptime, alertes) et savoir intervenir quand un service tombe.

Sauvegardes

Sur le cloud, les backups sont automatiques. En self-hosting, c'est à vous de les configurer. Un pg_dump planifié ne suffit pas toujours : pour un vrai plan de reprise, il faut du Point-in-time Recovery et un stockage des sauvegardes hors du serveur principal. Une sauvegarde qui vit sur la même machine que la base ne protège de rien.

Mises à jour

Les images Supabase évoluent vite et chaque service a son propre rythme de version. Une montée de version mal coordonnée peut casser la compatibilité entre PostgREST, GoTrue et votre schéma. La procédure sûre tient en cinq étapes :

  1. 1.Sauvegarder la base (pg_dump) et le volume Storage, puis vérifier que la restauration fonctionne
  2. 2.Lire les notes de version du dépôt supabase/supabase pour repérer les changements de variables d'environnement
  3. 3.Récupérer le nouveau fichier Compose et comparer votre .env avec le .env.example mis à jour
  4. 4.Appliquer la mise à jour sur un environnement de préproduction identique, puis lancer vos tests d'authentification et d'API
  5. 5.Déployer en production avec docker compose pull puis docker compose up -d, en surveillant les logs des conteneurs pendant les premières minutes

Une mise à jour par trimestre, planifiée et testée, vaut mieux qu'un docker compose pull improvisé un vendredi soir.

Sécurité

Vous devenez responsable du durcissement du serveur : pare-feu, HTTPS, rotation des secrets, mises à jour de l'OS, isolation réseau des conteneurs. Un Supabase self-hosted mal sécurisé, exposé directement sur Internet avec les secrets par défaut, est une porte ouverte.

La règle d'or : ne mettez jamais un Supabase self-hosted en production sans reverse proxy HTTPS, secrets régénérés et sauvegardes externalisées testées.

Cloud vs self-hosted : la grille de décision

La vraie question n'est pas laquelle des deux options est la meilleure, mais laquelle correspond à votre contexte. Ce tableau résume les arbitrages.

CritèreSupabase CloudSelf-hosted
Mise en routeImmédiateQuelques heures à quelques jours
Souveraineté des donnéesDatacenters au choixTotale, chez vous
Coût à petite échelleGratuit puis faibleCoût serveur fixe + temps humain
Coût à grande échellePeut devenir élevéMaîtrisé et prévisible
MaintenanceGérée par SupabaseEntièrement à votre charge
SauvegardesAutomatiquesÀ configurer et externaliser
Point-in-time RecoveryInclus (plans payants)À mettre en place soi-même
SupportÉquipe SupabaseCommunauté ou prestataire
En résumé : restez sur le cloud si vous privilégiez la vitesse de lancement et que vous n'avez pas d'équipe pour l'exploitation. Passez au self-hosting si la souveraineté est une exigence forte, si votre volume rend le cloud coûteux, ou si vous disposez des compétences DevOps en interne. Pour approfondir le duo avec votre frontend, lisez Supabase + Next.js, le combo gagnant.

Checklist avant de mettre Supabase self-hosted en production

  • •Tous les secrets du .env régénérés (mot de passe Postgres, JWT_SECRET, clés anon et service_role, identifiants du Studio)
  • •Reverse proxy HTTPS devant Kong, avec renouvellement automatique du certificat
  • •Studio inaccessible depuis Internet (VPN, filtrage IP ou authentification forte)
  • •Row Level Security activée sur chaque table exposée via l'API
  • •Sauvegardes quotidiennes externalisées sur un autre hébergeur ou un stockage objet, avec un test de restauration réalisé
  • •Monitoring en place : disponibilité, espace disque, mémoire, alertes sur les conteneurs arrêtés
  • •Procédure de mise à jour écrite et testée sur une préproduction

Si un seul de ces points manque, vous n'êtes pas encore prêt pour la production.

L'accompagnement ONDEV pour votre Supabase self-hosted

Chez ONDEV, notre activité de développement d'applications web sur-mesure s'appuie sur Next.js et Supabase, en cloud comme en self-hosting. Nous savons donc quand chaque option a du sens, et surtout comment sécuriser un déploiement auto-hébergé.

Concrètement, nous prenons en charge le déploiement Docker complet, le durcissement du serveur, la mise en place des sauvegardes automatisées et externalisées, le monitoring et la stratégie de mises à jour. Vous gardez la souveraineté, sans porter seul la charge d'exploitation.

Vous avez déjà un Supabase auto-hébergé qui tourne ? Un audit de code et d'architecture vérifie les secrets, les sauvegardes, les policies RLS et la stratégie de mise à jour, avant qu'un incident ne le fasse pour vous.

C'est le savoir-faire que nous appliquons sur des produits réels comme Wiloq, notre application SaaS de vestiaire numérique, un produit en production sur Next.js et Supabase avec plus de 12 fonctionnalités et 3 interfaces. Nous connaissons aussi les contraintes du self-hosting en entreprise : l'application technique auto-hébergée que nous avons livrée à SNEF sur Next.js et PostgreSQL fait gagner 1 h 30 tous les deux jours à chaque chef de chantier, avec un déploiement en self-hosting qui garantit la souveraineté des données.

Vous hésitez entre cloud et self-hosting pour votre projet ? Notre agence Supabase vous aide à trancher et à déployer la bonne architecture dès le départ.

FAQ : héberger Supabase soi-même

Supabase est-il vraiment gratuit en self-hosting ?
Le logiciel oui, il est open source sous licence Apache 2.0, sans royalties ni limite d'usage. Ce que vous payez, c'est le serveur qui l'héberge et le temps humain d'exploitation (maintenance, sauvegardes, sécurité). Le coût réel n'est donc pas nul, mais il est fixe et prévisible.
Quel serveur faut-il pour héberger Supabase ?
Pour un petit projet, un VPS avec 4 Go de RAM peut suffire pour tester. En production, prévoyez au minimum 8 à 16 Go de RAM et un disque SSD rapide, car PostgreSQL et les services associés consomment de la mémoire. Le dimensionnement dépend surtout de votre volume de données et de trafic.
Qu'est-ce que GoTrue dans Supabase et faut-il le configurer en self-hosting ?
GoTrue est le service d'authentification de Supabase : il gère les inscriptions, les connexions par mot de passe, magic link ou OAuth, et émet les tokens JWT. Sur Supabase Cloud il est préconfiguré. En self-hosting, vous devez lui fournir un serveur SMTP pour l'envoi des e-mails, déclarer l'URL publique de votre application, régénérer le secret JWT et renseigner les identifiants de chaque fournisseur OAuth. Sans ces réglages, les confirmations de compte ne partent pas et l'API refuse les requêtes authentifiées.
Peut-on installer Supabase self-hosted avec Coolify plutôt qu'avec Docker Compose ?
Oui. Coolify, plateforme open source d'auto-hébergement, propose Supabase parmi ses services en un clic : il génère les secrets, configure le reverse proxy HTTPS et gère les redémarrages sur votre VPS. C'est plus confortable pour une équipe sans DevOps, au prix d'un outil supplémentaire à maintenir et d'une personnalisation plus limitée. Pour une production exigeante, le Docker Compose officiel reste la référence.
Comment mettre à jour un Supabase self-hosted sans casser la production ?
Sauvegardez d'abord la base et le Storage, lisez les notes de version du dépôt officiel, comparez votre fichier .env avec le nouveau .env.example, puis appliquez la mise à jour sur une préproduction identique avant la production. Déployez ensuite avec docker compose pull puis docker compose up -d en surveillant les logs. Les ruptures viennent presque toujours d'une variable d'environnement renommée ou d'un décalage de version entre PostgREST, GoTrue et le schéma.
Supabase self-hosted offre-t-il les mêmes fonctionnalités que Supabase Cloud ?
Le cœur est identique : PostgreSQL, Auth, API REST et Realtime, Storage, Edge Functions et le Studio sont inclus dans la stack Docker. En revanche, tout ce que la plateforme cloud gère pour vous disparaît : sauvegardes automatiques et Point-in-time Recovery, mise à l'échelle, monitoring intégré, support. Certaines fonctions de la console cloud (gestion des régions, facturation, certains outils d'observabilité) n'ont pas d'équivalent en self-hosting. Vous gagnez la souveraineté, vous perdez l'exploitation gérée.
Peut-on migrer de Supabase Cloud vers un serveur self-hosted ?
Oui. Vous exportez la base avec un dump PostgreSQL, vous transférez les fichiers Storage, puis vous restaurez le tout sur votre instance auto-hébergée. Il faut ensuite reconfigurer les clés, l'authentification et les variables d'environnement. C'est faisable, mais cela demande de la méthode pour éviter les pertes de données.
Le self-hosting garantit-il la conformité RGPD ?
Il la facilite grandement, mais ne la garantit pas à lui seul. Héberger sur un serveur européen que vous contrôlez supprime les transferts hors UE et réduit le nombre de sous-traitants. Vous restez néanmoins responsable du chiffrement, des durées de rétention, de la gestion des accès et de la documentation de vos traitements.

Conclusion : la souveraineté a un prix, ONDEV le rend accessible

Héberger Supabase soi-même, c'est reprendre le contrôle total de vos données et de vos coûts, au prix d'une charge d'exploitation réelle : maintenance, sauvegardes, mises à jour et sécurité. Le cloud reste idéal pour démarrer vite ; le self-hosting brille dès que la souveraineté ou l'échelle entrent en jeu.

Le bon choix dépend de votre contexte, et une erreur d'architecture au départ coûte cher à corriger. Vous voulez un déploiement Supabase self-hosted fiable, sécurisé et conforme, sans y passer vos nuits ? Discutons de votre projet avec ONDEV : nous concevons et exploitons la bonne stack pour vous.

Auteur

Mathieu Rabissoni

Mathieu Rabissoni

Fondateur et développeur web

Infos

24 octobre 2026
12 mn
Développement

Service lié

Création site internet

Site sur-mesure avec SEO intégré, livré en 30 jours.

Découvrir

Travailler avec ONDEV

On construit pour vous un site sur mesure, adapté à vos enjeux business.

  • Sans dépendance technique
  • Sans frais de maintenance inutiles
On en discute ?

Avec nous c'est simple, rien n'est compliqué !

Nos réalisations

Refonte & SEO - Amadeus Centre d’Affaires
Refonte & Stratégie SEO

Refonte & SEO - Amadeus Centre d’Affaires

Wiloq - Application SaaS Vestiaire Numérique
Application SaaS

Wiloq - Application SaaS Vestiaire Numérique

Voir toutes les réalisations

Vos données clients hébergées chez vous plutôt que dans un datacenter à l'autre bout du monde : c'est possible.

Supabase Cloud est parfait pour démarrer, mais au-delà d'un certain volume la facture grimpe et vos données quittent votre infrastructure. Le self-hosting résout les deux problèmes : Supabase est 100% open source, et une instance Supabase self-hosted se déploie en une poignée de commandes Docker. Résultat : vos données restent chez vous et, à grande échelle, la facture devient fixe et prévisible.

Dans cet article, vous allez découvrir :

  • •Pourquoi héberger Supabase soi-même renforce la souveraineté de vos données et votre conformité RGPD
  • •Comment lancer la stack complète avec Docker Compose en moins de 30 minutes
  • •Les 4 contraintes de maintenance que personne ne vous explique avant de vous lancer
  • •La grille de décision cloud vs self-hosted pour trancher sans regret
  • •La checklist en 7 points à valider avant de passer votre Supabase self-hosted en production
Supabase est distribué sous licence Apache 2.0 : vous pouvez l'héberger où vous voulez, sans limite d'usage et sans royalties.

Pourquoi héberger Supabase soi-même

Le self-hosting n'est pas un caprice de puriste. C'est une décision stratégique qui répond à trois besoins concrets : la souveraineté, la conformité et le coût.

Souveraineté des données

Quand vous utilisez Supabase Cloud, vos données vivent sur une infrastructure gérée par un tiers. En self-hosting, la base PostgreSQL, les fichiers Storage et les logs restent sur votre serveur, dans le pays et le datacenter de votre choix.

Pour un secteur régulé (santé, finance, secteur public), c'est souvent non négociable. Vous gardez la main sur qui accède physiquement à la machine et sur la localisation exacte des données.

Conformité RGPD

Héberger en Europe, sur un serveur que vous contrôlez, simplifie radicalement votre analyse RGPD. Pas de transfert hors UE à justifier, pas de sous-traitant supplémentaire à cartographier dans votre registre des traitements.

Vous maîtrisez le chiffrement au repos, la durée de rétention et les procédures de suppression. C'est un argument fort face à un DPO ou lors d'un audit.

Contrôle des coûts à grande échelle

Supabase Cloud facture la base active, le stockage, la bande passante et les Edge Functions. Tant que vous êtes petit, c'est imbattable. Mais quand le trafic explose, le modèle par usage peut devenir cher.

En self-hosting, vous payez un serveur à prix fixe. Un VPS costaud ou une machine dédiée coûte quelques dizaines à quelques centaines d'euros par mois, quel que soit le nombre de requêtes. Pour comprendre où bascule l'équilibre, notre article sur les prix et tarifs de Supabase détaille chaque poste de facturation du cloud. Si c'est surtout la base PostgreSQL que vous voulez externaliser à prix serré, notre comparatif Supabase vs Neon éclaire une troisième voie.

Pour tout comprendre de la plateforme avant de vous lancer, consultez aussi notre guide complet sur Supabase.

Comment héberger Supabase avec Docker

Supabase n'est pas un logiciel unique : c'est un ensemble de services open source orchestrés ensemble. La méthode officielle de self-hosting repose sur Docker Compose, qui lance tous ces services d'un coup.

Prérequis : quel serveur pour Supabase self-hosted

Avant de lancer la moindre commande, il faut une machine correctement dimensionnée. PostgreSQL, Kong, Realtime et Storage tournent en parallèle et consomment de la mémoire dès le démarrage.

UsageRAMCPUDisque
Test et développement4 Go2 vCPU40 Go SSD
Petite production8 Go4 vCPU80 Go SSD
Production avec trafic16 Go et plus4 à 8 vCPU160 Go SSD et plus, sauvegardes externes
Côté hébergeur, un VPS ou un serveur dédié chez un acteur européen (Hetzner, OVHcloud, Scaleway) répond à la fois au besoin de performance et à l'exigence RGPD de localisation des données dans l'Union européenne. Docker et Docker Compose doivent être installés, et les ports 80 et 443 ouverts pour le reverse proxy.

Les services à lancer

Voici les briques que compose Supabase et leur rôle. Comprendre ce découpage est essentiel pour diagnostiquer un problème plus tard.

ServiceRôleImage Docker
PostgreSQLBase de données (le cœur)supabase/postgres
Auth (GoTrue)Authentification et gestion des utilisateurssupabase/gotrue
PostgRESTAPI REST auto-générée depuis le schéma SQLpostgrest/postgrest
RealtimeWebsockets et écoute des changements en temps réelsupabase/realtime
StorageStockage de fichiers avec règles d'accèssupabase/storage-api
KongPasserelle API qui route et sécurise le trafickong
StudioInterface d'administration graphiquesupabase/studio
Edge FunctionsExécution de fonctions Denosupabase/edge-runtime
SupavisorPooler de connexions PostgreSQLsupabase/supavisor

Docker Compose en pratique

Le démarrage tient en quelques commandes. Vous clonez le dépôt officiel, copiez le fichier d'environnement, puis lancez la stack.

bash
git clone --depth 1 https://github.com/supabase/supabase
cd supabase/docker
cp .env.example .env
docker compose up -d

Une fois la stack lancée, le Studio est accessible sur le port configuré et l'API passe par Kong. Avant toute mise en production, trois réglages sont impératifs :

  • •Remplacer tous les secrets par défaut du fichier .env (mots de passe Postgres, clés JWT, identifiants du dashboard)
  • •Placer un reverse proxy (Nginx, Caddy, Traefik) devant Kong pour gérer le HTTPS
  • •Restreindre l'accès au Studio (VPN, authentification, filtrage IP)

La logique de sécurité applicative reste la même que sur le cloud. Vos règles d'accès aux données s'appuient toujours sur le Row Level Security de Supabase, à activer sur chaque table sensible.

GoTrue en self-hosting : les réglages Auth qui changent

GoTrue est le service d'authentification de Supabase. Sur le cloud, il est préconfiguré ; en self-hosting, quatre points sont à votre charge dans le fichier .env :

  • •SMTP : sans serveur mail configuré, aucun e-mail de confirmation, de magic link ou de réinitialisation de mot de passe ne part. Renseignez un fournisseur transactionnel (Brevo, Postmark, Resend) et vérifiez l'expéditeur.
  • •SITE_URL et redirections autorisées : l'URL publique de votre application doit être déclarée, sinon les liens de confirmation renvoient vers localhost.
  • •JWT_SECRET : il signe tous les tokens. Il doit être régénéré (au moins 32 caractères) et partagé à l'identique avec PostgREST et Realtime, faute de quoi l'API refuse les requêtes authentifiées. Les clés anon et service_role doivent ensuite être générées à partir de ce nouveau secret.
  • •Fournisseurs OAuth : chaque connexion Google, GitHub ou Apple doit être déclarée avec ses identifiants et son URL de callback pointant vers votre domaine.

La logique côté application ne change pas : notre guide Supabase Auth reste valable, seules les variables d'environnement diffèrent.

L'alternative Coolify pour éviter le Docker Compose brut

Si vous ne voulez pas maintenir le fichier Compose à la main, Coolify (open source) propose Supabase en un clic sur votre propre VPS : il génère les secrets, place un reverse proxy HTTPS (Traefik par défaut) devant la stack et gère les redémarrages. Vous gardez la souveraineté des données, avec une couche d'exploitation plus confortable.

Le revers : une dépendance à un outil supplémentaire à mettre à jour, et une personnalisation plus limitée que le Compose officiel. Pour une équipe sans DevOps, c'est souvent le bon compromis ; pour une production exigeante, le Compose officiel reste la référence.

Les contraintes du self-hosting à anticiper

Héberger soi-même, c'est reprendre à sa charge tout ce que Supabase Cloud gère silencieusement pour vous. Voici les quatre chantiers à ne jamais négliger.

Maintenance et supervision

Un serveur qui héberge une base de production doit être surveillé : espace disque, mémoire, charge CPU, disponibilité des conteneurs. Il faut mettre en place du monitoring (uptime, alertes) et savoir intervenir quand un service tombe.

Sauvegardes

Sur le cloud, les backups sont automatiques. En self-hosting, c'est à vous de les configurer. Un pg_dump planifié ne suffit pas toujours : pour un vrai plan de reprise, il faut du Point-in-time Recovery et un stockage des sauvegardes hors du serveur principal. Une sauvegarde qui vit sur la même machine que la base ne protège de rien.

Mises à jour

Les images Supabase évoluent vite et chaque service a son propre rythme de version. Une montée de version mal coordonnée peut casser la compatibilité entre PostgREST, GoTrue et votre schéma. La procédure sûre tient en cinq étapes :

  1. 1.Sauvegarder la base (pg_dump) et le volume Storage, puis vérifier que la restauration fonctionne
  2. 2.Lire les notes de version du dépôt supabase/supabase pour repérer les changements de variables d'environnement
  3. 3.Récupérer le nouveau fichier Compose et comparer votre .env avec le .env.example mis à jour
  4. 4.Appliquer la mise à jour sur un environnement de préproduction identique, puis lancer vos tests d'authentification et d'API
  5. 5.Déployer en production avec docker compose pull puis docker compose up -d, en surveillant les logs des conteneurs pendant les premières minutes

Une mise à jour par trimestre, planifiée et testée, vaut mieux qu'un docker compose pull improvisé un vendredi soir.

Sécurité

Vous devenez responsable du durcissement du serveur : pare-feu, HTTPS, rotation des secrets, mises à jour de l'OS, isolation réseau des conteneurs. Un Supabase self-hosted mal sécurisé, exposé directement sur Internet avec les secrets par défaut, est une porte ouverte.

La règle d'or : ne mettez jamais un Supabase self-hosted en production sans reverse proxy HTTPS, secrets régénérés et sauvegardes externalisées testées.

Cloud vs self-hosted : la grille de décision

La vraie question n'est pas laquelle des deux options est la meilleure, mais laquelle correspond à votre contexte. Ce tableau résume les arbitrages.

CritèreSupabase CloudSelf-hosted
Mise en routeImmédiateQuelques heures à quelques jours
Souveraineté des donnéesDatacenters au choixTotale, chez vous
Coût à petite échelleGratuit puis faibleCoût serveur fixe + temps humain
Coût à grande échellePeut devenir élevéMaîtrisé et prévisible
MaintenanceGérée par SupabaseEntièrement à votre charge
SauvegardesAutomatiquesÀ configurer et externaliser
Point-in-time RecoveryInclus (plans payants)À mettre en place soi-même
SupportÉquipe SupabaseCommunauté ou prestataire
En résumé : restez sur le cloud si vous privilégiez la vitesse de lancement et que vous n'avez pas d'équipe pour l'exploitation. Passez au self-hosting si la souveraineté est une exigence forte, si votre volume rend le cloud coûteux, ou si vous disposez des compétences DevOps en interne. Pour approfondir le duo avec votre frontend, lisez Supabase + Next.js, le combo gagnant.

Checklist avant de mettre Supabase self-hosted en production

  • •Tous les secrets du .env régénérés (mot de passe Postgres, JWT_SECRET, clés anon et service_role, identifiants du Studio)
  • •Reverse proxy HTTPS devant Kong, avec renouvellement automatique du certificat
  • •Studio inaccessible depuis Internet (VPN, filtrage IP ou authentification forte)
  • •Row Level Security activée sur chaque table exposée via l'API
  • •Sauvegardes quotidiennes externalisées sur un autre hébergeur ou un stockage objet, avec un test de restauration réalisé
  • •Monitoring en place : disponibilité, espace disque, mémoire, alertes sur les conteneurs arrêtés
  • •Procédure de mise à jour écrite et testée sur une préproduction

Si un seul de ces points manque, vous n'êtes pas encore prêt pour la production.

L'accompagnement ONDEV pour votre Supabase self-hosted

Chez ONDEV, notre activité de développement d'applications web sur-mesure s'appuie sur Next.js et Supabase, en cloud comme en self-hosting. Nous savons donc quand chaque option a du sens, et surtout comment sécuriser un déploiement auto-hébergé.

Concrètement, nous prenons en charge le déploiement Docker complet, le durcissement du serveur, la mise en place des sauvegardes automatisées et externalisées, le monitoring et la stratégie de mises à jour. Vous gardez la souveraineté, sans porter seul la charge d'exploitation.

Vous avez déjà un Supabase auto-hébergé qui tourne ? Un audit de code et d'architecture vérifie les secrets, les sauvegardes, les policies RLS et la stratégie de mise à jour, avant qu'un incident ne le fasse pour vous.

C'est le savoir-faire que nous appliquons sur des produits réels comme Wiloq, notre application SaaS de vestiaire numérique, un produit en production sur Next.js et Supabase avec plus de 12 fonctionnalités et 3 interfaces. Nous connaissons aussi les contraintes du self-hosting en entreprise : l'application technique auto-hébergée que nous avons livrée à SNEF sur Next.js et PostgreSQL fait gagner 1 h 30 tous les deux jours à chaque chef de chantier, avec un déploiement en self-hosting qui garantit la souveraineté des données.

Vous hésitez entre cloud et self-hosting pour votre projet ? Notre agence Supabase vous aide à trancher et à déployer la bonne architecture dès le départ.

FAQ : héberger Supabase soi-même

Supabase est-il vraiment gratuit en self-hosting ?
Le logiciel oui, il est open source sous licence Apache 2.0, sans royalties ni limite d'usage. Ce que vous payez, c'est le serveur qui l'héberge et le temps humain d'exploitation (maintenance, sauvegardes, sécurité). Le coût réel n'est donc pas nul, mais il est fixe et prévisible.
Quel serveur faut-il pour héberger Supabase ?
Pour un petit projet, un VPS avec 4 Go de RAM peut suffire pour tester. En production, prévoyez au minimum 8 à 16 Go de RAM et un disque SSD rapide, car PostgreSQL et les services associés consomment de la mémoire. Le dimensionnement dépend surtout de votre volume de données et de trafic.
Qu'est-ce que GoTrue dans Supabase et faut-il le configurer en self-hosting ?
GoTrue est le service d'authentification de Supabase : il gère les inscriptions, les connexions par mot de passe, magic link ou OAuth, et émet les tokens JWT. Sur Supabase Cloud il est préconfiguré. En self-hosting, vous devez lui fournir un serveur SMTP pour l'envoi des e-mails, déclarer l'URL publique de votre application, régénérer le secret JWT et renseigner les identifiants de chaque fournisseur OAuth. Sans ces réglages, les confirmations de compte ne partent pas et l'API refuse les requêtes authentifiées.
Peut-on installer Supabase self-hosted avec Coolify plutôt qu'avec Docker Compose ?
Oui. Coolify, plateforme open source d'auto-hébergement, propose Supabase parmi ses services en un clic : il génère les secrets, configure le reverse proxy HTTPS et gère les redémarrages sur votre VPS. C'est plus confortable pour une équipe sans DevOps, au prix d'un outil supplémentaire à maintenir et d'une personnalisation plus limitée. Pour une production exigeante, le Docker Compose officiel reste la référence.
Comment mettre à jour un Supabase self-hosted sans casser la production ?
Sauvegardez d'abord la base et le Storage, lisez les notes de version du dépôt officiel, comparez votre fichier .env avec le nouveau .env.example, puis appliquez la mise à jour sur une préproduction identique avant la production. Déployez ensuite avec docker compose pull puis docker compose up -d en surveillant les logs. Les ruptures viennent presque toujours d'une variable d'environnement renommée ou d'un décalage de version entre PostgREST, GoTrue et le schéma.
Supabase self-hosted offre-t-il les mêmes fonctionnalités que Supabase Cloud ?
Le cœur est identique : PostgreSQL, Auth, API REST et Realtime, Storage, Edge Functions et le Studio sont inclus dans la stack Docker. En revanche, tout ce que la plateforme cloud gère pour vous disparaît : sauvegardes automatiques et Point-in-time Recovery, mise à l'échelle, monitoring intégré, support. Certaines fonctions de la console cloud (gestion des régions, facturation, certains outils d'observabilité) n'ont pas d'équivalent en self-hosting. Vous gagnez la souveraineté, vous perdez l'exploitation gérée.
Peut-on migrer de Supabase Cloud vers un serveur self-hosted ?
Oui. Vous exportez la base avec un dump PostgreSQL, vous transférez les fichiers Storage, puis vous restaurez le tout sur votre instance auto-hébergée. Il faut ensuite reconfigurer les clés, l'authentification et les variables d'environnement. C'est faisable, mais cela demande de la méthode pour éviter les pertes de données.
Le self-hosting garantit-il la conformité RGPD ?
Il la facilite grandement, mais ne la garantit pas à lui seul. Héberger sur un serveur européen que vous contrôlez supprime les transferts hors UE et réduit le nombre de sous-traitants. Vous restez néanmoins responsable du chiffrement, des durées de rétention, de la gestion des accès et de la documentation de vos traitements.

Conclusion : la souveraineté a un prix, ONDEV le rend accessible

Héberger Supabase soi-même, c'est reprendre le contrôle total de vos données et de vos coûts, au prix d'une charge d'exploitation réelle : maintenance, sauvegardes, mises à jour et sécurité. Le cloud reste idéal pour démarrer vite ; le self-hosting brille dès que la souveraineté ou l'échelle entrent en jeu.

Le bon choix dépend de votre contexte, et une erreur d'architecture au départ coûte cher à corriger. Vous voulez un déploiement Supabase self-hosted fiable, sécurisé et conforme, sans y passer vos nuits ? Discutons de votre projet avec ONDEV : nous concevons et exploitons la bonne stack pour vous.

Mathieu Rabissoni

Mathieu Rabissoni

Fondateur et développeur web

24 octobre 2026
12 mn
Développement

Service lié

Création site internet

Site sur-mesure avec SEO intégré, livré en 30 jours.

Découvrir

Travailler avec ONDEV

On construit pour vous un site sur mesure, adapté à vos enjeux business.

On en discute ?
Mathieu Rabissoni

Mathieu Rabissoni

Fondateur et développeur web d'ONDEV

Il cadre, code et maintient lui-même chaque projet depuis 2020, à Marseille : 50+ projets livrés, dont l'application métier de Dassault Aviation (90+ utilisateurs).

Voir son parcoursSes réalisations

Contenu rédigé avec l'assistance d'outils d'IA, relu et validé par Mathieu Rabissoni. En savoir plus

Services ONDEV liés à cet article

Création site internet Marseille•Application web sur-mesure•Refonte de site internet•Expert Next.js Marseille•Agence web à Marseille•Nos réalisations

Besoin d'aide pour votre projet ?

Discutons de vos objectifs et voyons comment je peux vous aider à les atteindre.

Prendre rendez-vousAppelerWhatsApp