Pourquoi self-héberger PostHog sur un VPS
PostHog capture des événements produit très détaillés, parfois sensibles. Le cloud de l'éditeur facture au volume d'événements, ce qui devient coûteux pour une application active. En auto-hébergement, vous gardez la donnée comportementale chez vous, vous traitez des volumes importants pour un coût serveur fixe, et vous activez l'ensemble des modules (replay, flags, expériences) sans palier payant.
Les bénéfices concrets d'un PostHog auto-hébergé
- Données produit et de session conservées sur votre infrastructure.
- Volume d'événements élevé sans facturation à l'usage.
- Suite complète : analytics, session replay, feature flags, A/B testing.
- Intégration directe avec vos applications via les SDK officiels.
- Coût prévisible, dimensionné par les ressources du VPS.
Prérequis matériels et logiciels
PostHog est la plus exigeante des solutions de cette liste : elle embarque ClickHouse, Kafka, Redis et PostgreSQL. Comptez au minimum 4 vCPU et 8 Go de RAM, et davantage en production. Prévoyez 30 Go de disque ou plus pour les événements. Côté logiciel : Docker et Docker Compose, un nom de domaine (ex. posthog.votre-domaine.ma) pointant vers le VPS, et le port 443 ouvert.
Déployer PostHog en self-host avec Docker
Préparer un VPS dimensionné
Choisissez une instance d'au moins 4 vCPU / 8 Go de RAM. En SSH, mettez à jour le système et installez Docker via curl -fsSL https://get.docker.com | sh.
Lancer le déploiement officiel
Suivez le script d'installation self-host de PostHog, qui génère le docker-compose complet (web, workers, ClickHouse, Kafka, Redis, PostgreSQL) et demande votre nom de domaine.
Renseigner le domaine et les secrets
Fixez SITE_URL=https://posthog.votre-domaine.ma et les secrets générés. Vérifiez que le DNS pointe bien vers le VPS avant de poursuivre, pour l'émission du certificat.
Démarrer la stack
Lancez docker compose up -d et patientez : le premier démarrage initialise plusieurs services. Suivez les logs jusqu'à ce que le service web réponde.
Gérer le TLS
Le déploiement officiel inclut Caddy pour HTTPS automatique. Si vous utilisez votre propre proxy, faites pointer posthog.votre-domaine.ma vers le port web exposé.
Créer le projet et brancher un SDK
Ouvrez l'URL, créez le compte administrateur et le premier projet, puis intégrez le SDK (JS, Python…) avec la clé fournie pour commencer à capturer les événements.
PostHog n'est pas conçu pour les très petites machines : sous-dimensionner le VPS provoque des plantages de ClickHouse ou de Kafka. Partez large sur la RAM, et surveillez l'espace disque que les événements consomment vite.
La documentation officielle
Pour la configuration avancée et les options propres à l'outil, référez-vous à la documentation officielle de PostHog. Ce guide couvre la mise en ligne sur VPS ; la doc éditeur reste la référence pour les réglages fins, les mises à jour majeures et les cas d'usage spécifiques.