Comment auto-héberger Supabase sur un VPS (Guide complet)
Supabase est une alternative open-source à Firebase qui fournit une puissante plateforme de backend-as-a-service. L’héberger sur un VPS vous permet d’avoir un contrôle total sur vos données et configurations. Dans ce guide, nous allons vous guider à travers le processus d’auto-hébergement de Supabase sur un VPS, en utilisant Docker pour un déploiement facile.
Prérequis
Avant de commencer, assurez-vous d’avoir ce qui suit :
- Un VPS (avec au moins 2 Go de RAM et 1 CPU) d’un fournisseur tel que DigitalOcean ou Hetzner.
- Des connaissances de base en Docker et en interface en ligne de commande (CLI).
- Un client SSH pour accéder à votre VPS.
| Fournisseur | Prix de départ | Spécifications recommandées |
|---|---|---|
| Contabo VPS | 5,99 EUR/mois | 2 Go de RAM, 1 CPU |
| Hetzner Cloud | 4,15 EUR/mois | 2 Go de RAM, 1 CPU |
| DigitalOcean | 6 USD/mois | 2 Go de RAM, 1 CPU |
| Vultr | 6 USD/mois | 1 Go de RAM, 1 CPU |
| Linode (Akamai) | 5 USD/mois | 2 Go de RAM, 1 CPU |
Vous pouvez comparer plus d’options de VPS dans notre comparaison complète de VPS.
Étape 1 : Configurez votre VPS
Tout d’abord, vous devez configurer votre VPS. Cela implique généralement :
-
Choisir un système d’exploitation : Nous recommandons Ubuntu 20.04 LTS pour sa compatibilité avec Docker.
-
Accéder à votre VPS : Utilisez SSH pour vous connecter à votre serveur :
ssh nom_utilisateur@votre-ip-vps -
Mettre à jour votre système : Assurez-vous que vos paquets sont à jour :
sudo apt update sudo apt upgrade -y
Étape 2 : Installer Docker
Pour exécuter Supabase, vous devez avoir Docker installé sur votre VPS. Suivez ces commandes :
-
Installer les dépendances pour Docker :
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y -
Ajouter la clé GPG officielle de Docker :
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - -
Configurer le dépôt stable :
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" -
Installer Docker :
sudo apt update sudo apt install docker-ce -y -
Démarrer et activer Docker :
sudo systemctl start docker sudo systemctl enable docker -
Vérifier l’installation :
docker --version
Étape 3 : Tirer et exécuter les images Docker de Supabase
Maintenant que Docker est configuré, vous pouvez tirer les images Docker de Supabase.
-
Créer un répertoire pour votre projet Supabase :
mkdir supabase && cd supabase -
Créer un fichier Docker Compose :
Créez un fichier
docker-compose.ymlavec le contenu suivant :version: '3.8' services: db: image: supabase/postgres environment: POSTGRES_PASSWORD: votre_mot_de_passe POSTGRES_USER: votre_utilisateur POSTGRES_DB: votre_base_de_données ports: - "5432:5432" auth: image: supabase/gotrue ports: - "9999:9999" realtime: image: supabase/realtime ports: - "4000:4000" studio: image: supabase/studio ports: - "3000:3000"Remplacez
votre_mot_de_passe,votre_utilisateuretvotre_base_de_donnéespar vos valeurs souhaitées. -
Démarrer les services Supabase :
Exécutez la commande suivante dans le même répertoire que votre
docker-compose.yml:docker-compose up -d -
Vérifier les services en cours d’exécution :
Vous pouvez vérifier les journaux en utilisant :
docker-compose logs
Étape 4 : Accéder à Supabase Studio
Une fois vos services en cours d’exécution, vous pouvez accéder à Supabase Studio en naviguant vers http://votre-ip-vps:3000 dans votre navigateur. À partir de là, vous pouvez gérer votre base de données, l’authentification, et plus encore.
FAQ
Q1 : Quels sont les avantages de l’auto-hébergement de Supabase sur un VPS ?
L’auto-hébergement de Supabase sur un VPS permet un meilleur contrôle, une sécurité renforcée et des configurations personnalisées. Vous gérez votre matériel et votre logiciel, garantissant que vous respectez vos besoins de conformité spécifiques. De plus, cela peut être plus rentable à long terme, surtout si vous attendez une utilisation significative, car vous pouvez éviter le verrouillage par des fournisseurs et conserver la propriété de vos données.
Q2 : Puis-je évoluer mon instance Supabase si j’ai besoin de plus de ressources ?
Oui, vous pouvez faire évoluer votre instance Supabase en fonction de vos besoins. Cela peut impliquer de mettre à niveau votre VPS vers un plan plus grand qui fournit de plus grandes ressources CPU et RAM ou d’optimiser vos configurations Docker. Les deux stratégies sont réalisables et peuvent être exécutées sans temps d’arrêt significatif, garantissant que vos applications restent disponibles pendant que vous ajustez votre infrastructure.
Q3 : Quels sont les problèmes courants rencontrés lors de l’auto-hébergement de Supabase ?
Les problèmes courants incluent des erreurs de configuration, des ressources insuffisantes sur le VPS et des problèmes de connectivité réseau. Assurez-vous que vos conteneurs Docker sont correctement configurés et que votre VPS répond aux spécifications nécessaires. De plus, consultez la communauté Supabase sur r/selfhosted pour des conseils et des bonnes pratiques en matière d’auto-hébergement d’applications.
En suivant ce guide, vous pouvez réussir à auto-héberger Supabase sur un VPS, vous permettant de tirer parti d’une solution backend robuste sans compromettre le contrôle et la confidentialité.