[{"data":1,"prerenderedAt":217},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-posthog-vps-ma-fr":6,"promo-bar-likely":216},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-heberger-posthog-vps-ma-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":33,"intro":36,"sections":37,"ctaTitle":156,"ctaBody":157,"ctaButton":158,"ctaUrl":159,"relatedPosts":160},155,"heberger-posthog-vps",{"fr":10,"en":12,"ar":13,"es":14},"how-to-host-posthog-on-a-vps","كيفية-استضافة-posthog-على-خادم-vps","como-alojar-posthog-en-un-vps","Comment héberger PostHog sur un VPS","Hébergez PostHog sur un VPS ServOrbit : Docker Compose annoté, MinIO pour les session recordings, feature flags et SDK JS. Guide complet RGPD.",9,2,false,"2026-01-22T00:00:00+00:00","2026-10-02T14:03:20+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-posthog-vps-poster.svg",{"categorySlug":34,"appSlug":35},"analytics","analytics-posthog","PostHog est la réponse open source à Mixpanel et Amplitude : events, entonnoirs, session recordings, feature flags et A\u002FB testing dans une seule instance auto-hébergée. Sur le cloud de l'éditeur, la facture grimpe dès que le volume d'événements dépasse les paliers gratuits — quelques millions d'events par mois suffisent pour atteindre plusieurs centaines de dollars. Sur votre VPS, le coût est celui du serveur, rien de plus. Vous gardez les données comportementales de vos utilisateurs sur votre infrastructure, vous respectez le RGPD sans contrats supplémentaires, et vous activez la totalité des modules — session replay, feature flags, expériences A\u002FB — sans aucun palier payant. Ce guide couvre l'installation pas à pas via Docker Compose, la configuration d'un reverse proxy nginx avec HTTPS, la mise en place d'un object storage pour les session recordings, le branchement du SDK JavaScript, et l'activation des feature flags.",[38,42,76,79,98,113,128,143,146,150,153],{"type":39,"title":40,"body":41},"h2","Ce que PostHog fait que les alternatives SaaS ne permettent pas","Mixpanel, Amplitude et Heap sont des outils cloud : vos données partent sur leurs serveurs, leur politique de rétention fixe ce que vous pouvez conserver, et le sampling s'active automatiquement dès que votre volume dépasse certains seuils. PostHog self-hosted supprime ces trois contraintes. Les événements restent dans votre base ClickHouse, sur votre disque ou votre object storage — aucune copie ne part à l'extérieur. La rétention n'a pas de plafond imposé : vous choisissez vous-même quand purger les anciennes données. Le sampling n'existe pas : chaque événement est enregistré, même lors de pics de trafic. Ajoutez à cela la conformité RGPD sans DPA à négocier avec un tiers, la possibilité de modifier le code source, et un accès direct aux données brutes dans ClickHouse pour vos propres analyses SQL.",{"type":43,"title":44,"headers":45,"rows":49},"comparison","Comparatif rapide : PostHog self-hosted vs Mixpanel Cloud",[46,47,48],"Critère","PostHog self-hosted","Mixpanel Cloud",[50,54,58,62,66,69,73],[51,52,53],"Prix mensuel (1M events\u002Fmois)","~$15–20 (coût VPS)","~$25–100+",[55,56,57],"Données hébergées chez vous","Oui","Non",[59,60,61],"Conformité RGPD simplifiée","Oui (pas de DPA tiers)","Partielle (DPA requis)",[63,64,65],"Sampling automatique","Aucun","Activé au-delà des paliers",[67,56,68],"Session recordings incluses","Option payante",[70,71,72],"Feature flags & A\u002FB testing","Oui, inclus","Payant (plan Growth+)",[74,75,57],"Accès aux données brutes SQL","Oui (ClickHouse direct)",{"type":39,"title":77,"body":78},"Prérequis serveur","PostHog embarque ClickHouse, Kafka, Redis et PostgreSQL dans la même stack Docker Compose. C'est la solution d'analytics la plus gourmande en ressources de cette catégorie, et sous-dimensionner le VPS provoque des crashs de ClickHouse ou des timeouts Kafka dès les premiers événements. Prévoyez au minimum 4 vCPU et 8 Go de RAM pour un usage léger (moins d'un million d'events par mois). Pour une charge plus soutenue — 1 à 5 millions d'events par mois — visez 8 vCPU et 16 Go de RAM. Côté stockage, ClickHouse est très efficace en compression, mais les session recordings s'accumulent vite : prévoyez 50 Go de SSD minimum, et ajoutez un object storage externe (S3 ou MinIO) dès que vous activez les recordings. Côté logiciel : Docker Engine 24+ et Docker Compose v2, un nom de domaine avec un enregistrement A pointant vers le VPS, et les ports 80 et 443 ouverts dans votre pare-feu.",{"type":80,"title":81,"steps":82},"steps","Installer PostHog avec Docker Compose",[83,86,89,92,95],{"title":84,"body":85},"Installer Docker sur le VPS","Connectez-vous en SSH, puis installez Docker avec le script officiel : `curl -fsSL https:\u002F\u002Fget.docker.com | sh`. Ajoutez votre utilisateur au groupe docker pour éviter sudo : `usermod -aG docker $USER`. Vérifiez avec `docker compose version` que Compose v2 est disponible.",{"title":87,"body":88},"Cloner le dépôt PostHog et préparer l'environnement","Clonez le dépôt officiel : `git clone https:\u002F\u002Fgithub.com\u002FPostHog\u002Fposthog.git && cd posthog`. Copiez le fichier d'environnement exemple : `cp .env.example .env`. Ouvrez `.env` dans un éditeur pour configurer les variables essentielles.",{"title":90,"body":91},"Configurer les variables d'environnement","Dans `.env`, renseignez au minimum : `SECRET_KEY` (générez une clé aléatoire de 50 caractères avec `python3 -c \"import secrets; print(secrets.token_hex(25))\"`), `SITE_URL=https:\u002F\u002Fposthog.votre-domaine.com`, `DISABLE_SECURE_SSL=false` (ou `true` si vous testez en HTTP local sans certificat). Laissez les valeurs de `POSTGRES_*`, `REDIS_*` et `CLICKHOUSE_*` avec leurs défauts Docker pour un déploiement simple.",{"title":93,"body":94},"Démarrer la stack et attendre la migration","Lancez tous les services en arrière-plan : `docker compose -f docker-compose.yml up -d`. La première fois, PostHog exécute automatiquement les migrations de base de données — cela prend 2 à 5 minutes selon la puissance du serveur. Suivez la progression avec `docker compose logs -f web` jusqu'à voir `PostHog server is now listening on port 8000`.",{"title":96,"body":97},"Accéder à l'interface et créer votre compte","Accédez à `http:\u002F\u002Flocalhost:8000` (ou via votre domaine si le DNS est déjà configuré). L'assistant de premier lancement vous guide pour créer le compte administrateur, nommer votre organisation, et créer votre premier projet. Notez la `Project API Key` affichée — vous en aurez besoin pour brancher le SDK.",{"type":80,"title":99,"steps":100},"Configurer un reverse proxy nginx pour HTTPS",[101,104,107,110],{"title":102,"body":103},"Installer nginx et Certbot","Sur la machine hôte (hors Docker) : `apt install -y nginx certbot python3-certbot-nginx`. Assurez-vous que votre domaine `posthog.votre-domaine.com` pointe bien vers l'IP du VPS avant cette étape — Certbot doit pouvoir valider via HTTP.",{"title":105,"body":106},"Créer le vhost nginx","Créez `\u002Fetc\u002Fnginx\u002Fsites-available\u002Fposthog` avec le contenu suivant : `server { listen 80; server_name posthog.votre-domaine.com; location \u002F { proxy_pass http:\u002F\u002F127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }`. Activez-le : `ln -s \u002Fetc\u002Fnginx\u002Fsites-available\u002Fposthog \u002Fetc\u002Fnginx\u002Fsites-enabled\u002F`.",{"title":108,"body":109},"Émettre le certificat TLS","Lancez `certbot --nginx -d posthog.votre-domaine.com`. Certbot modifie automatiquement le vhost pour rediriger HTTP vers HTTPS et configure le renouvellement automatique. Testez le renouvellement avec `certbot renew --dry-run`.",{"title":111,"body":112},"Recharger nginx et vérifier","Appliquez la configuration : `nginx -t && systemctl reload nginx`. Ouvrez `https:\u002F\u002Fposthog.votre-domaine.com` dans un navigateur — vous devriez voir l'interface PostHog avec un certificat valide. Mettez à jour `SITE_URL` dans `.env` si ce n'est pas déjà fait, puis redémarrez le service web : `docker compose restart web`.",{"type":80,"title":114,"steps":115},"Object storage pour les session recordings (S3 ou MinIO)",[116,119,122,125],{"title":117,"body":118},"Comprendre pourquoi un object storage est nécessaire","Les session recordings génèrent de nombreux fichiers de petite taille (un par segment de session). Les stocker sur le disque local du VPS remplit rapidement le SSD et complique les sauvegardes. Un object storage compatible S3 — qu'il s'agisse d'AWS S3, de Cloudflare R2 ou de MinIO auto-hébergé — externalise ce stockage de façon élastique.",{"title":120,"body":121},"Déployer MinIO sur le même VPS (option auto-hébergée)","Si vous ne voulez pas dépendre d'un service externe, ajoutez MinIO à votre `docker-compose.yml` : `minio: image: minio\u002Fminio environment: MINIO_ROOT_USER: posthog MINIO_ROOT_PASSWORD: changeme-mot-de-passe-fort command: server \u002Fdata --console-address ':9001' volumes: - .\u002Fminio-data:\u002Fdata`. Créez ensuite un bucket nommé `posthog` dans l'interface MinIO (port 9001).",{"title":123,"body":124},"Configurer les variables d'environnement PostHog","Dans `.env`, ajoutez : `OBJECT_STORAGE_ENABLED=true`, `OBJECT_STORAGE_ENDPOINT=http:\u002F\u002Fminio:9000` (ou l'URL de votre bucket S3), `OBJECT_STORAGE_ACCESS_KEY_ID=posthog`, `OBJECT_STORAGE_SECRET_ACCESS_KEY=changeme-mot-de-passe-fort`, `OBJECT_STORAGE_BUCKET=posthog`. Redémarrez la stack : `docker compose up -d`.",{"title":126,"body":127},"Vérifier avec un premier session recording","Dans les paramètres du projet PostHog, activez « Session recording ». Naviguez sur votre application pendant quelques secondes, puis retournez dans PostHog sous « Session Recordings ». Un enregistrement devrait apparaître en quelques minutes. Vérifiez dans MinIO (ou S3) que des fichiers ont bien été créés dans le bucket.",{"type":80,"title":129,"steps":130},"Envoyer vos premiers events depuis votre application",[131,134,137,140],{"title":132,"body":133},"Installer le SDK JavaScript","Dans votre projet front-end : `npm install posthog-js`. Si vous utilisez un framework comme React, Vue ou Next.js, importez et initialisez PostHog une seule fois au niveau racine de l'application.",{"title":135,"body":136},"Initialiser avec votre clé de projet et l'URL de votre instance","Ajoutez l'initialisation : `import posthog from 'posthog-js'; posthog.init('phc_VOTRE_PROJECT_API_KEY', { api_host: 'https:\u002F\u002Fposthog.votre-domaine.com', autocapture: true });`. Remplacez `phc_VOTRE_PROJECT_API_KEY` par la clé visible dans les paramètres du projet PostHog. Avec `autocapture: true`, PostHog enregistre automatiquement les clics, les soumissions de formulaires et les changements de page.",{"title":138,"body":139},"Capturer des events personnalisés","Pour un event métier précis, appelez : `posthog.capture('commande_passee', { montant: 49.90, devise: 'EUR', produit: 'vps-cloud-4vcpu' });`. Les propriétés associées à l'event seront disponibles dans les entonnoirs, les cohortes et les requêtes SQL ClickHouse.",{"title":141,"body":142},"Vérifier dans le dashboard","Rendez-vous dans PostHog sous « Activity » ou « Events ». Les events apparaissent en temps quasi-réel (quelques secondes de latence). Si rien n'arrive au bout de deux minutes, vérifiez que `api_host` dans l'init correspond exactement à l'URL de votre instance, et que le certificat TLS est valide.",{"type":39,"title":144,"body":145},"Activer les Feature Flags","Les feature flags permettent de déployer une fonctionnalité progressivement — d'abord pour 5 % des utilisateurs, puis 20 %, puis 100 % — sans recompiler ni redéployer l'application. Dans PostHog, rendez-vous sous « Feature Flags » et créez un nouveau flag avec une clé (`mon-nouveau-module`), une condition de rollout (pourcentage ou cohorte d'utilisateurs), et optionnellement des variantes pour un vrai test A\u002FB. Côté application JavaScript, évaluez le flag : `if (posthog.isFeatureEnabled('mon-nouveau-module')) { \u002F* afficher la nouvelle fonctionnalité *\u002F }`. Pour une évaluation côté serveur (Python ou Node.js), utilisez le SDK backend correspondant avec la même `PROJECT_API_KEY` — l'évaluation se fait alors sans aller-retour client, ce qui évite le flash de contenu. PostHog enregistre automatiquement un event `$feature_flag_called` à chaque évaluation, ce qui vous permet de corréler l'activation d'un flag avec n'importe quelle métrique de votre dashboard.",{"type":147,"title":148,"body":149},"tip","Optimisation performance : désactivez les session recordings au démarrage","Si votre VPS est configuré avec le minimum de 4 vCPU \u002F 8 Go de RAM, les session recordings mobilisent des ressources importantes côté ClickHouse dès les premières heures de trafic. Recommandation : laissez les recordings désactivés pendant les 30 premiers jours. Cela vous laisse le temps de valider la stabilité de la stack, d'affiner la configuration de l'object storage, et de monter en RAM si nécessaire. Activez-les ensuite dans les paramètres du projet — tous les recordings futurs seront capturés, et vous pouvez définir un taux d'échantillonnage pour n'enregistrer qu'un pourcentage de sessions et maîtriser l'espace disque.",{"type":39,"title":151,"body":152},"Mettre à jour PostHog","L'équipe PostHog publie des mises à jour régulières. Pour mettre à jour : `git pull origin master` dans le répertoire du dépôt, puis `docker compose pull` pour récupérer les nouvelles images, et enfin `docker compose up -d`. Les migrations de base de données s'exécutent automatiquement au redémarrage du service web — une interruption de quelques dizaines de secondes est normale. Consultez les release notes avant chaque mise à jour majeure : certaines versions imposent une mise à jour intermédiaire (pas de saut de version).",{"type":147,"title":154,"body":155},"Documentation officielle","Ce guide couvre l'installation de base sur VPS. Pour les sujets avancés — réplication ClickHouse, SSO SAML, webhooks, intégrations data warehouse, et les options de configuration de Kafka — référez-vous à la \u003Ca href=\"https:\u002F\u002Fposthog.com\u002Fdocs\u002Fself-host\" target=\"_blank\" rel=\"noopener noreferrer\">documentation officielle de PostHog\u003C\u002Fa>. Elle reste la référence pour les mises à jour majeures et les cas d'usage spécifiques.","Déployez votre instance sur un VPS Cloud ServOrbit","Un VPS Cloud ServOrbit avec Docker préconfiguré et des ressources évolutives vous laisse installer cet outil sans friction, et ajuster RAM et vCPU à mesure que l'usage grandit.","Lancer mon VPS Cloud","\u002Fvps-cloud",[161,179,195],{"id":162,"slug":163,"slugs":164,"title":168,"excerpt":169,"readTime":18,"views":170,"isPinned":19,"noindex":19,"publishedAt":171,"updatedAt":172,"category":173,"categories":174,"featuredImage":30,"bgImage":31,"posterImage":176,"relatedSolution":177},154,"heberger-matomo-vps",{"fr":163,"en":165,"ar":166,"es":167},"how-to-host-matomo-on-a-vps","كيفية-استضافة-matomo-على-خادم-vps","como-alojar-matomo-en-un-vps","Comment héberger Matomo sur un VPS","Déployez Matomo sur votre VPS : alternative complète à Google Analytics, 100 % propriétaire de vos données, auto-hébergée avec Docker et HTTPS. Guide pas à pas.",1,"2026-01-23T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[175],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-matomo-vps-poster.svg",{"categorySlug":34,"appSlug":178},"analytics-matomo",{"id":180,"slug":181,"slugs":182,"title":186,"excerpt":187,"readTime":18,"views":170,"isPinned":19,"noindex":19,"publishedAt":188,"updatedAt":172,"category":189,"categories":190,"featuredImage":30,"bgImage":31,"posterImage":192,"relatedSolution":193},153,"heberger-plausible-vps",{"fr":181,"en":183,"ar":184,"es":185},"how-to-host-plausible-analytics-on-a-vps","كيفية-استضافة-plausible-analytics-على-خادم-vps","como-alojar-plausible-analytics-en-un-vps","Comment héberger Plausible Analytics sur un VPS","Déployez Plausible Analytics sur votre VPS : analytics léger, sans cookies et conforme RGPD, auto-hébergé avec Docker, ClickHouse et HTTPS. Guide pas à pas.","2026-01-24T00:00:00+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[191],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-plausible-vps-poster.svg",{"categorySlug":34,"appSlug":194},"analytics-plausible",{"id":196,"slug":197,"slugs":198,"title":202,"excerpt":203,"readTime":196,"views":170,"isPinned":19,"noindex":19,"publishedAt":204,"updatedAt":205,"category":206,"categories":211,"featuredImage":30,"bgImage":31,"posterImage":213,"relatedSolution":214},8,"heberger-flowise-vps",{"fr":197,"en":199,"ar":200,"es":201},"how-to-host-flowise-on-a-vps","كيفية-استضافة-flowise-على-خادم-vps","como-alojar-flowise-en-un-vps","Comment héberger Flowise sur un VPS","Déployez Flowise sur votre VPS : construisez des agents et chatbots IA no-code avec Docker. Variables d'env, RAG Ollama, mise à jour et dépannage.","2026-06-12T00:00:00+00:00","2026-09-19T02:00:43+00:00",{"id":170,"name":207,"slug":208,"color":209,"icon":210},"Intelligence Artificielle","intelligence-artificielle","bg-purple-500\u002F10 text-purple-400","ia",[212],{"id":170,"name":207,"slug":208,"color":209,"icon":210},"\u002Fblog\u002Fcovers\u002Fheberger-flowise-vps-poster.svg",{"categorySlug":210,"appSlug":215},"flowise",true,1794270730014]