[{"data":1,"prerenderedAt":163},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-umami-vps-ma-fr":6,"promo-bar-likely":162},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-heberger-umami-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":27,"featuredImage":29,"bgImage":30,"posterImage":31,"relatedSolution":32,"intro":35,"sections":36,"ctaTitle":102,"ctaBody":103,"ctaButton":104,"ctaUrl":105,"relatedPosts":106},152,"heberger-umami-vps",{"fr":10,"en":12,"ar":13,"es":14},"how-to-host-umami-on-a-vps","كيفية-استضافة-umami-على-خادم-vps","como-alojar-umami-en-un-vps","Comment héberger Umami sur un VPS","Déployez Umami sur votre VPS : analytics web légers et sans cookies, auto-hébergés avec Docker et HTTPS. Guide complet avec dépannage.",7,1,false,"2026-07-15T00:00:00+00:00","2026-10-09T22:36:10+00:00",{"id":17,"name":23,"slug":24,"color":25,"icon":26},"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[28],{"id":17,"name":23,"slug":24,"color":25,"icon":26},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-umami-vps-poster.svg",{"categorySlug":33,"appSlug":34},"analytics","analytics-umami","Umami est un outil d'analytics web open source, léger et respectueux de la vie privée : il mesure votre audience sans cookies ni collecte de données personnelles. Auto-hébergé sur votre VPS, il vous rend propriétaire de vos statistiques de trafic, sans les confier à une régie publicitaire. Voici comment le déployer avec Docker, une base de données PostgreSQL, un reverse proxy et un certificat TLS — et comment résoudre les trois problèmes qui bloquent le plus souvent au démarrage.",[37,41,50,53,72,75,93,97,99],{"type":38,"title":39,"body":40},"h2","Pourquoi self-héberger Umami sur un VPS","Umami est une alternative légère à Google Analytics : open source, sans cookies de traçage, sans transfert de données vers des tiers. Sur un VPS, vous en gardez le contrôle total — aucun compte SaaS, aucune limite de sites, aucune donnée partagée. La stack Docker est minimaliste : un conteneur Node.js pour l'application et un conteneur PostgreSQL pour la base de données. Le tout s'installe en moins de dix minutes sur une VM standard avec accès root, et les données restent sur votre serveur.\n\nComparé à Google Analytics 4, Umami ne nécessite pas de configuration de consentement pour les statistiques anonymisées dans la majorité des juridictions européennes. Comparé à Matomo, son empreinte mémoire est nettement inférieure, et sa configuration Docker se résume à un fichier `docker-compose.yml`. Pour une agence qui gère dix clients, une seule instance Umami avec dix sites fait le travail d'un abonnement SaaS facturé par utilisateur ou par domaine. La version 2.14 (juillet 2026) a introduit la prise en charge native des événements personnalisés et un tableau de bord exportable en CSV — deux fonctionnalités longtemps attendues par les équipes marketing.",{"type":42,"title":43,"items":44},"ul","Les bénéfices concrets d'un Umami auto-hébergé",[45,46,47,48,49],"Conforme à la vie privée : pas de cookies, pas de données personnelles, souvent pas de bannière de consentement requise.","Vos statistiques d'audience restent sur votre serveur, sans partage avec un tiers.","Script de suivi de quelques kilo-octets, sans cookie ni collecte de données personnelles.","Tableau de bord clair et multi-sites depuis une seule instance.","Coût fixe quel que soit le volume de pages vues.",{"type":38,"title":51,"body":52},"Prérequis matériels et logiciels","Umami tourne sur n'importe quel VPS avec Docker installé. Le minimum recommandé est 1 vCPU et 512 Mo de RAM pour un usage personnel ou une PME ; au-delà de 200 000 pages vues par mois, 1 Go de RAM évite les ralentissements de PostgreSQL. Vous aurez besoin de : Docker Engine (≥ 20.10) et Docker Compose V2 (`docker compose`, pas `docker-compose`), un nom de domaine ou sous-domaine pointant vers votre VPS, et un reverse proxy (nginx ou Caddy) pour servir Umami en HTTPS. Debian 12 et Ubuntu 22 sont les distributions de référence ; les commandes ci-dessous supposent un accès root ou sudo.\n\nCôté serveur, ouvrez les ports 80 et 443 dans votre pare-feu (`ufw allow 80\u002Ftcp && ufw allow 443\u002Ftcp`). Umami n'a besoin que du port HTTPS exposé vers l'extérieur ; le port applicatif (3000 par défaut) reste interne et n'est jamais ouvert directement. Si vous utilisez un VPS ServOrbit, le groupe de sécurité par défaut autorise déjà 80 et 443.",{"type":54,"title":55,"steps":56},"steps","Déployer Umami avec Docker et HTTPS",[57,60,63,66,69],{"title":58,"body":59},"Préparer le VPS et Docker","En SSH, mettez à jour le système et installez Docker via `curl -fsSL https:\u002F\u002Fget.docker.com | sh`. Créez `mkdir -p \u002Fopt\u002Fumami && cd \u002Fopt\u002Fumami`.",{"title":61,"body":62},"Écrire le docker-compose.yml","Définissez deux services : `ghcr.io\u002Fumami-software\u002Fumami:postgresql-latest` et une base `postgres`. Renseignez `DATABASE_URL` et un `APP_SECRET` aléatoire.",{"title":64,"body":65},"Lancer les conteneurs","Exécutez `docker compose up -d`. Umami écoute en local sur le port 3000 ; la base est initialisée automatiquement au premier démarrage.",{"title":67,"body":68},"Configurer le reverse proxy","Avec Caddy : `stats.votre-domaine.com { reverse_proxy localhost:3000 }`. Le certificat Let's Encrypt est obtenu et renouvelé automatiquement.",{"title":70,"body":71},"Ajouter votre site et le script","Connectez-vous (admin\u002Fumami par défaut, à changer immédiatement), ajoutez votre site et collez le snippet de suivi fourni dans le `\u003Chead>` de vos pages.",{"type":38,"title":73,"body":74},"Problèmes fréquents au démarrage","Trois causes concentrent la quasi-totalité des échecs signalés en 2026 dans les guides communautaires. Les voici avec leur diagnostic et leur correctif.\n\n**1. Restart loop « Can't reach database server » — `DATABASE_URL` ne correspond pas à `POSTGRES_PASSWORD`**\n\nC'est le piège de copier-coller le plus fréquent : `DATABASE_URL` contient le mot de passe en clair dans la chaîne de connexion, et ce mot de passe doit être **identique** à la valeur de `POSTGRES_PASSWORD` dans le service `db`. Si vous changez l'un sans l'autre, Umami démarre, échoue à joindre la base, et redémarre en boucle — sans message d'erreur explicite dans les logs Docker.\n\nVérifiez que vos deux variables sont cohérentes :\n\n```\n# dans .env ou dans le compose\nPOSTGRES_PASSWORD=mot_de_passe_fort\n\n# dans DATABASE_URL, le même mot de passe en position 3\nDATABASE_URL=postgresql:\u002F\u002Fumami:mot_de_passe_fort@db:5432\u002Fumami\n```\n\nSi vous utilisez une variable d'interpolation (`${POSTGRES_PASSWORD}`), assurez-vous que Docker Compose charge bien votre fichier `.env`.\n\n**2. Umami crashe 5 à 10 secondes après le démarrage — `depends_on` sans `healthcheck`**\n\nPar défaut, `depends_on: db` attend uniquement que le conteneur PostgreSQL soit **démarré**, pas qu'il soit **prêt à accepter des connexions**. Umami tente alors de se connecter alors que PostgreSQL initialise encore ses fichiers de données, échoue, et s'arrête.\n\nAjoutez un `healthcheck` sur le service `db` et un `condition: service_healthy` dans le `depends_on` d'Umami :\n\n```\nservices:\n  db:\n    image: postgres:15-alpine\n    healthcheck:\n      test: [\"CMD-SHELL\", \"pg_isready -U umami\"]\n      interval: 10s\n      timeout: 5s\n      retries: 5\n  umami:\n    image: ghcr.io\u002Fumami-software\u002Fumami:postgresql-latest\n    depends_on:\n      db:\n        condition: service_healthy\n```\n\nAvec cette configuration, Umami ne démarre qu'une fois que PostgreSQL répond sur son socket.\n\n**3. Erreur 502 après un `docker compose pull` — port publié modifié**\n\nAprès une mise à jour (`docker compose pull` + `docker compose up -d`), nginx peut renvoyer une erreur 502 si la configuration a changé entre deux versions de l'image : le port interne peut avoir été redirigé ou le binding hôte modifié. Vérifiez d'abord l'état réel des conteneurs :\n\n```\ndocker compose ps\n```\n\nRepérez la colonne **PORTS** pour confirmer que le conteneur Umami publie bien sur le port attendu (par défaut `3000`). Si le port a changé, mettez à jour la directive `proxy_pass` (ou `reverse_proxy`) dans nginx ou Caddy pour qu'elle reflète le nouveau port, puis rechargez le service (`nginx -s reload` ou `systemctl reload caddy`).\n\n**4. `docker-compose` (v1) vs `docker compose` (v2) — commandes muettes**\n\nLes guides publiés avant 2025 utilisent souvent `docker-compose` (tiret), le client Python qui n'est plus maintenu. Sur une installation fraîche de Docker Engine, cette commande n'existe pas : le terminal rend simplement `command not found`, sans dire que v2 s'appelle `docker compose` (espace). Vérifiez avec `docker compose version` — si la commande répond, vous avez v2. Tous les exemples de ce guide utilisent `docker compose` (v2).",{"type":54,"title":76,"steps":77},"Mettre à jour Umami",[78,81,84,87,90],{"title":79,"body":80},"Sauvegarder la base de données","Avant toute mise à jour : `docker compose exec db pg_dump -U umami umami > umami-backup-$(date +%F).sql`. Conservez ce fichier hors du volume Docker — il ne sera pas préservé si vous supprimez le volume.",{"title":82,"body":83},"Tirer la dernière image","`docker compose pull`. Umami publie ses releases sur GitHub (github.com\u002Fumami-software\u002Fumami\u002Freleases) — consultez les notes de version pour identifier les migrations de schéma ou les changements de variables d'environnement.",{"title":85,"body":86},"Redémarrer la stack","`docker compose up -d`. Umami applique les migrations automatiquement au démarrage. Vérifiez les logs avec `docker compose logs -f app` et attendez le message `Listening on port 3000`.",{"title":88,"body":89},"Contrôler la version dans l'interface","Paramètres → À propos. Si la version n'a pas changé, l'image n'a peut-être pas été re-tirée : `docker compose images` affiche le digest de chaque image en cours d'exécution.",{"title":91,"body":92},"Vérifier que le tracking fonctionne","Ouvrez un site suivi dans un onglet privé et attendez 30 secondes — la page Temps réel doit enregistrer la visite. Un 0 persistant après un redémarrage indique souvent un problème de script de tracking côté frontend.",{"type":94,"title":95,"body":96},"tip","Umami Cloud vs auto-hébergé","Umami propose une offre Cloud gérée (umami.is\u002Fpricing) à partir de 9 $\u002Fmois pour les équipes qui ne veulent pas maintenir l'infrastructure. L'auto-hébergement sur VPS est pertinent si vous avez déjà une VM, si vous gérez plusieurs sites, ou si la politique de données de votre organisation interdit tout envoi vers un SaaS externe — même RGPD-compatible. Les deux partagent le même code, les mêmes fonctionnalités et le même format d'export.",{"type":94,"body":98},"Changez le mot de passe administrateur par défaut dès la première connexion, et sauvegardez régulièrement la base PostgreSQL : c'est elle qui contient tout votre historique d'audience.",{"type":94,"title":100,"body":101},"La documentation officielle","Pour la configuration avancée et les options propres à l'outil, référez-vous à la \u003Ca href=\"https:\u002F\u002Fumami.is\u002Fdocs\" target=\"_blank\" rel=\"noopener noreferrer\">documentation officielle de Umami\u003C\u002Fa>. 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.","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",[107,125,141],{"id":108,"slug":109,"slugs":110,"title":114,"excerpt":115,"readTime":116,"views":18,"isPinned":19,"noindex":19,"publishedAt":117,"updatedAt":118,"category":119,"categories":120,"featuredImage":29,"bgImage":30,"posterImage":122,"relatedSolution":123},153,"heberger-plausible-vps",{"fr":109,"en":111,"ar":112,"es":113},"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.",2,"2026-01-24T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":17,"name":23,"slug":24,"color":25,"icon":26},[121],{"id":17,"name":23,"slug":24,"color":25,"icon":26},"\u002Fblog\u002Fcovers\u002Fheberger-plausible-vps-poster.svg",{"categorySlug":33,"appSlug":124},"analytics-plausible",{"id":126,"slug":127,"slugs":128,"title":132,"excerpt":133,"readTime":116,"views":18,"isPinned":19,"noindex":19,"publishedAt":134,"updatedAt":118,"category":135,"categories":136,"featuredImage":29,"bgImage":30,"posterImage":138,"relatedSolution":139},154,"heberger-matomo-vps",{"fr":127,"en":129,"ar":130,"es":131},"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.","2026-01-23T00:00:00+00:00",{"id":17,"name":23,"slug":24,"color":25,"icon":26},[137],{"id":17,"name":23,"slug":24,"color":25,"icon":26},"\u002Fblog\u002Fcovers\u002Fheberger-matomo-vps-poster.svg",{"categorySlug":33,"appSlug":140},"analytics-matomo",{"id":142,"slug":143,"slugs":144,"title":148,"excerpt":149,"readTime":150,"views":18,"isPinned":19,"noindex":19,"publishedAt":151,"updatedAt":152,"category":153,"categories":158,"featuredImage":29,"bgImage":30,"posterImage":160,"relatedSolution":161},97,"plausible-vs-umami",{"fr":143,"en":145,"ar":146,"es":147},"plausible-vs-umami-which-self-hosted-analytics-to-choose","plausible-مقابل-umami-أي-أداة-تحليلات-مستضافة-ذاتيا-تختار","plausible-vs-umami-que-analitica-self-hosted-elegir","Plausible vs Umami : quel analytics self-hosted choisir ?","Comparaison Plausible vs Umami en 2026 : installation, RGPD, funnels, événements personnalisés, migration depuis GA4 et arbre de décision pour choisir le bon outil.",9,"2026-03-15T00:00:00+00:00","2026-11-08T01:13:15+00:00",{"id":154,"name":155,"slug":156,"color":157,"icon":156},5,"Comparatif","comparatif","bg-info\u002F10 text-info",[159],{"id":154,"name":155,"slug":156,"color":157,"icon":156},"\u002Fblog\u002Fcovers\u002Fplausible-vs-umami-poster.svg",{"categorySlug":33,"appSlug":124},true,1794270734535]