Ga naar inhoud

Metribay zelf draaien

De self-hosted editie, ook Personal edition genoemd, is Metribay op je eigen server. Gratis en open source onder de Apache-2.0-licentie.

Self-hosted Metribay Cloud
Kosten Gratis Zie Abonnementen en facturering
Mensen Eén persoon Teams met rollen
Workspaces Eén, op de achtergrond Tot 5
Projecten en databronnen Geen limiet 10 en 50 actief
Integraties Alle zeven Alle zeven
Updates, back-ups, uptime Jij Wij
Google sign-in button Je eigen Google-app Waar beschikbaar geleverd

Kies self-hosting als je een PHP-applicatie kunt draaien en alles op eigen hardware wilt. Kies Cloud als je geen server wilt beheren of met anderen wilt werken.

  • PHP 8.5 of nieuwer met cURL, OpenSSL, PDO (SQLite of PostgreSQL), intl en mbstring
  • Composer 2
  • SQLite voor persoonlijke installatie, of PostgreSQL
  • Een manier om twee achtergrondprocessen draaiende te houden, zoals systemd of Supervisor, en cron
  • Node 24 alleen als je frontend assets opnieuw wilt bouwen. De release bevat ze al.
  1. Run het setupscript vanuit de repository root en ga naar de applicatie:

    Terminal window
    ./scripts/setup.sh
    cd standalone
  2. Maak je account. Het commando vraagt privé om een wachtwoord:

    Terminal window
    php artisan metribay:install [email protected]
  3. Start de webserver. Voor een snelle lokale test:

    Terminal window
    php artisan serve --host=127.0.0.1 --port=8000

    In productie serveer je standalone/public over HTTPS met je webserver.

  4. Start de queue worker en scheduler als aparte long-running processen:

    Terminal window
    php artisan queue:work --timeout=900
    php artisan schedule:work

    In productie draai de worker onder een process manager en gebruik één cronregel voor php artisan schedule:run elke minuut in plaats van schedule:work.

Log in met het e-mailadres en wachtwoord dat je koos. Registratie staat uit: de installatie hoort bij het ene account dat je aanmaakte.

De scheduler start collectie elke vier uur, uptime-monitors elk uur en een volledige history refresh eens per week — net als in Cloud. Collectie gebeurt alleen terwijl queue worker en scheduler draaien.

Handmatig sync starten:

Terminal window
php artisan metribay:sync # queue elke actieve databron
php artisan metribay:sync --kind=github # alleen één provider
php artisan metribay:sync --except=uptimerobot
php artisan metribay:sync --source=12 # één databron op ID
php artisan metribay:sync --full # hele history window opnieuw lezen
php artisan metribay:sync --inline # nu draaien, zonder queue

Elke integratie werkt met je eigen credentials, zoals in de integratiegidsen. Niets gaat via servers van Metribay.

Voor een Google verbinden-knop voor Analytics en Search Console maak je een eigen OAuth-client:

  1. In de Google Cloud-console: Analytics Admin, Analytics Data en Search Console API’s inschakelen.

  2. OAuth-client type Web application met deze redirect URI (je eigen adres): https://metribay.example.com/integrations/google/callback

  3. Voeg details toe aan je .env:

    METRIBAY_GOOGLE_CLIENT_ID=your-client-id
    METRIBAY_GOOGLE_CLIENT_SECRET=your-client-secret
    METRIBAY_GOOGLE_REDIRECT_URI=https://metribay.example.com/integrations/google/callback

Zolang je Google-app in testmodus staat, verlopen Google-inlogpogingen na zeven dagen. Service accounts hebben dat probleem niet.

  • Serveer over HTTPS met APP_ENV=production en APP_DEBUG=false.

  • Houd .env, database en back-ups buiten de publieke webmap.

  • Cache nooit ingelogde pagina’s op een CDN of proxy.

  • Na update: migraties, assets publiceren en worker herstarten:

    Terminal window
    php artisan migrate --force
    php artisan vendor:publish --tag=metribay-assets --force
    php artisan queue:restart
  • Configureer mailtransport zodat wachtwoordresetmails je bereiken.

Back-up twee dingen apart:

  • The database. SQLite: online backup van SQLite, niet het bestand kopiëren tijdens gebruik. PostgreSQL: pg_dump.
  • The APP_KEY. Opgeslagen credentials zijn ermee versleuteld. Zonder sleutel kan een database-back-up ze niet decrypten. Wijzig de sleutel niet zonder plan voor her-encryptie.

Test af en toe een restore. Configuratie-export is ook nuttig, maar geen volledige back-up: geen historie en geen credentials.

Exporteer je configuratie, meld je aan voor Cloud, voeg connected accounts toe met dezelfde namen en importeer het bestand. Cloud verzamelt je historie opnieuw van je providers, binnen het history window van elke databron.