Héberger Metribay toi-même
L’édition self-hosted, aussi appelée Édition Personal, c’est Metribay sur ton propre serveur. Elle est gratuite et open source sous licence Apache-2.0.
C’est pour toi ?
Section titled “C’est pour toi ?”| Self-hosted | Metribay Cloud | |
|---|---|---|
| Coût | Gratuit | Voir Offres et facturation |
| Personnes | Une personne | Équipes avec rôles |
| Espaces de travail | Un, en arrière-plan | Jusqu’à 5 |
| Projets et sources de données | Sans limite | 10 et 50 actifs |
| Intégrations | Les sept | Les sept |
| Mises à jour, sauvegardes, disponibilité | Toi | Nous |
| Bouton Connect Google | Ta propre app Google | Fourni quand disponible |
Choisis le self-hosting si tu es à l’aise avec une app PHP et veux tout sur ton matériel. Choisis Cloud si tu préfères ne pas gérer un serveur ou travailler avec d’autres.
Prérequis
Section titled “Prérequis”- PHP 8.5 ou plus avec les extensions cURL, OpenSSL, PDO (SQLite ou PostgreSQL), intl et mbstring
- Composer 2
- SQLite pour une installation personnelle, ou PostgreSQL
- Un moyen de faire tourner deux processus en arrière-plan, comme systemd ou Supervisor, et cron
- Node 24 seulement si tu veux reconstruire les assets frontend. La release les inclut.
Installation
Section titled “Installation”-
Lance le script de setup depuis la racine du dépôt, puis passe à l’application :
Terminal window ./scripts/setup.shcd standalone -
Crée ton compte. La commande demande le mot de passe en privé :
Terminal window -
Démarre le serveur web. Pour un essai local rapide :
Terminal window php artisan serve --host=127.0.0.1 --port=8000En production, sers le répertoire
standalone/publicen HTTPS avec ton serveur web. -
Démarre le worker de file et le planificateur comme processus longue durée séparés :
Terminal window php artisan queue:work --timeout=900php artisan schedule:workEn production, fais tourner le worker sous un gestionnaire de processus, et utilise une entrée cron pour
php artisan schedule:runchaque minute au lieu deschedule:work.
Connecte-toi avec l’e-mail et le mot de passe choisis. L’inscription est désactivée : l’installation appartient au seul compte que tu as créé.
Comment tourne la collecte
Section titled “Comment tourne la collecte”Le planificateur lance la collecte toutes les quatre heures, les moniteurs uptime toutes les heures et un rafraîchissement complet de l’historique une fois par semaine, comme dans Cloud. La collecte n’a lieu que tant que le worker et le planificateur tournent.
Pour lancer une synchro à la main :
php artisan metribay:sync # met en file chaque source activephp artisan metribay:sync --kind=github # un seul fournisseurphp artisan metribay:sync --except=uptimerobotphp artisan metribay:sync --source=12 # une source par IDphp artisan metribay:sync --full # relit toute la fenêtre d'historiquephp artisan metribay:sync --inline # exécute maintenant, sans fileConnecter les fournisseurs
Section titled “Connecter les fournisseurs”Chaque intégration fonctionne avec tes propres identifiants, comme dans les guides d’intégration. Rien ne passe par les serveurs Metribay.
Pour avoir un bouton Connecter Google pour Analytics et Search Console, crée ta propre app OAuth Google :
-
Dans la console Google Cloud, active les API Analytics Admin, Analytics Data et Search Console.
-
Crée un client OAuth de type Web application avec cette URI de redirection, avec ton adresse :
https://metribay.example.com/integrations/google/callback -
Ajoute les détails dans ton fichier
.env:METRIBAY_GOOGLE_CLIENT_ID=your-client-idMETRIBAY_GOOGLE_CLIENT_SECRET=your-client-secretMETRIBAY_GOOGLE_REDIRECT_URI=https://metribay.example.com/integrations/google/callback
Tant que ton app Google est en mode test, Google expire les connexions après sept jours. Les comptes de service n’ont pas ce problème.
Checklist production
Section titled “Checklist production”-
Sers en HTTPS avec
APP_ENV=productionetAPP_DEBUG=false. -
Garde
.env, la base de données et les sauvegardes hors du répertoire web public. -
Ne mets jamais en cache les pages connectées sur un CDN ou proxy.
-
Après mise à jour, lance les migrations, publie les assets et redémarre le worker :
Terminal window php artisan migrate --forcephp artisan vendor:publish --tag=metribay-assets --forcephp artisan queue:restart -
Configure un transport mail pour que les e-mails de réinitialisation de mot de passe t’atteignent.
Sauvegardes
Section titled “Sauvegardes”Sauvegarde deux choses, séparément :
- La base de données. Pour SQLite, utilise la sauvegarde en ligne de SQLite plutôt que copier le fichier en cours d’utilisation. Pour PostgreSQL, utilise
pg_dump. - La
APP_KEY. Les identifiants enregistrés sont chiffrés avec elle. Sans la clé, une sauvegarde de base ne peut pas les déchiffrer. Ne change pas la clé sans plan pour rechiffrer.
Teste une restauration de temps en temps. L’export de configuration est utile mais ce n’est pas une sauvegarde complète : pas d’historique ni d’identifiants.
Passer à Metribay Cloud
Section titled “Passer à Metribay Cloud”Exporte ta configuration, inscris-toi sur Cloud, ajoute tes comptes connectés avec les mêmes noms et importe le fichier. Cloud collecte à nouveau ton historique chez tes fournisseurs, dans la fenêtre d’historique de chaque source.