Ospitare Metribay da solo
L’edizione self-hosted, anche chiamata Edizione Personal, è Metribay sul tuo server. È gratuita e open source sotto licenza Apache-2.0.
Fa per te?
Section titled “Fa per te?”| Self-hosted | Metribay Cloud | |
|---|---|---|
| Costo | Gratis | Vedi Piani e fatturazione |
| Persone | Una persona | Team con ruoli |
| Workspace | Uno, in background | Fino a 5 |
| Progetti e fonti dati | Nessun limite | 10 e 50 attivi |
| Integrazioni | Tutte e sette | Tutte e sette |
| Aggiornamenti, backup, uptime | Tu | Noi |
| Pulsante Connect Google | La tua app Google | Fornito quando disponibile |
Scegli self-hosting se sai gestire un’applicazione PHP e vuoi tutto sul tuo hardware. Scegli Cloud se preferisci non amministrare un server o lavorare con altri.
Requisiti
Section titled “Requisiti”- PHP 8.5 o successivo con estensioni cURL, OpenSSL, PDO (SQLite o PostgreSQL), intl e mbstring
- Composer 2
- SQLite per un’installazione personale, o PostgreSQL
- Un modo per tenere due processi in background, come systemd o Supervisor, e cron
- Node 24 solo se vuoi ricompilare gli asset frontend. La release li include.
Installazione
Section titled “Installazione”-
Esegui lo script di setup dalla root del repository, poi passa all’applicazione:
Terminal window ./scripts/setup.shcd standalone -
Crea il tuo account. Il comando chiede la password in privato:
Terminal window -
Avvia il server web. Per una prova locale veloce:
Terminal window php artisan serve --host=127.0.0.1 --port=8000In produzione, servi la directory
standalone/publicin HTTPS con il tuo server web. -
Avvia queue worker e scheduler come processi separati a lunga durata:
Terminal window php artisan queue:work --timeout=900php artisan schedule:workIn produzione, esegui il worker con un process manager e usa una voce cron per
php artisan schedule:runogni minuto invece dischedule:work.
Accedi con email e password scelti. La registrazione è disattivata: l’installazione appartiene all’unico account creato.
Come gira la raccolta
Section titled “Come gira la raccolta”Lo scheduler avvia la raccolta ogni quattro ore, i monitor uptime ogni ora e un refresh completo dello storico una volta a settimana, come in Cloud. La raccolta avviene solo mentre queue worker e scheduler sono attivi.
Per avviare una sync a mano:
php artisan metribay:sync # accoda ogni fonte dati attivaphp artisan metribay:sync --kind=github # solo un providerphp artisan metribay:sync --except=uptimerobotphp artisan metribay:sync --source=12 # una fonte dati per IDphp artisan metribay:sync --full # rilegge tutta la finestra storicaphp artisan metribay:sync --inline # esegui ora, senza codaCollegare i provider
Section titled “Collegare i provider”Ogni integrazione funziona con le tue credenziali, come descritto nelle guide alle integrazioni. Nulla passa dai server Metribay.
Per avere un pulsante Connetti Google per Analytics e Search Console, crea la tua app OAuth Google:
-
Nella Google Cloud console, abilita le API Analytics Admin, Analytics Data e Search Console.
-
Crea un client OAuth di tipo Web application con questo redirect URI, usando il tuo indirizzo:
https://metribay.example.com/integrations/google/callback -
Aggiungi i dettagli al file
.env:METRIBAY_GOOGLE_CLIENT_ID=your-client-idMETRIBAY_GOOGLE_CLIENT_SECRET=your-client-secretMETRIBAY_GOOGLE_REDIRECT_URI=https://metribay.example.com/integrations/google/callback
Mentre la tua app Google è in modalità test, Google fa scadere gli accessi dopo sette giorni. I service account non hanno questo problema.
Checklist produzione
Section titled “Checklist produzione”-
Servi in HTTPS con
APP_ENV=productioneAPP_DEBUG=false. -
Tieni
.env, database e backup fuori dalla directory web pubblica. -
Non mettere in cache le pagine autenticate su CDN o proxy.
-
Dopo un aggiornamento, esegui migrazioni, pubblica asset e riavvia il worker:
Terminal window php artisan migrate --forcephp artisan vendor:publish --tag=metribay-assets --forcephp artisan queue:restart -
Configura un trasporto mail così le email di reset password ti arrivano.
Backup
Section titled “Backup”Backuppa due cose, separatamente:
- Il database. Per SQLite, usa il backup online di SQLite invece di copiare il file in uso. Per PostgreSQL, usa
pg_dump. - La
APP_KEY. Le credenziali salvate sono crittografate con essa. Senza la chiave, un backup del database non può decrittarle. Non cambiare la chiave senza un piano per ricrittografare.
Prova un restore di tanto in tanto. L’export di configurazione è utile ma non è un backup completo: non ha storico né credenziali.
Passare a Metribay Cloud
Section titled “Passare a Metribay Cloud”Esporta la configurazione, registrati su Cloud, aggiungi gli account collegati con gli stessi nomi e importa il file. Cloud raccoglie di nuovo lo storico dai provider, entro la finestra storica di ogni fonte dati.