Skip to content

Run Metribay yourself

Self-hosted, Лично издание, е Metribay на твой сървър. Безплатно, open source, Apache-2.0.

Self-hosted Metribay Cloud
Cost Free See Plans and billing
People One person Teams with roles
Workspaces One, in the background Up to 5
Projects and data sources No limit 10 and 50 active
Integrations All seven All seven
Updates, backups, uptime You Us
Google sign-in button Your own Google app Provided when available

Self-hosting ако можеш PHP app и own hardware. Cloud ако не искаш server ops или team.

  • PHP 8.5+ with cURL, OpenSSL, PDO (SQLite or PostgreSQL), intl, mbstring
  • Composer 2
  • SQLite or PostgreSQL
  • systemd/Supervisor + cron for background processes
  • Node 24 only to rebuild frontend; release includes assets
  1. From repository root, then app:

    Terminal window
    ./scripts/setup.sh
    cd standalone
  2. Create account (password asked privately):

    Terminal window
    php artisan metribay:install [email protected]
  3. Web server. Quick local:

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

    Production: standalone/public over HTTPS.

  4. Queue worker + scheduler:

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

    Production: process manager + cron php artisan schedule:run every minute.

Sign in with install email/password. Registration off — one account.

Scheduler: collection every 4h, uptime hourly, full history weekly — like Cloud. Needs queue worker + scheduler.

Manual sync:

Terminal window
php artisan metribay:sync # queue every active data source
php artisan metribay:sync --kind=github # only one provider
php artisan metribay:sync --except=uptimerobot
php artisan metribay:sync --source=12 # one data source by ID
php artisan metribay:sync --full # reread the whole history window
php artisan metribay:sync --inline # run now, without the queue

Own credentials per integration guides. Nothing through Metribay servers.

Свържи Google for Analytics/Search Console — own OAuth client:

  1. Google Cloud: enable Analytics Admin, Analytics Data, Search Console APIs.

  2. OAuth Web application, redirect: https://metribay.example.com/integrations/google/callback

  3. .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

Google app in testing: sign-ins expire after 7 days. Service accounts don’t.

  • HTTPS, APP_ENV=production, APP_DEBUG=false

  • .env, DB, backups outside public web

  • Never cache signed-in pages at CDN/proxy

  • After update:

    Terminal window
    php artisan migrate --force
    php artisan vendor:publish --tag=metribay-assets --force
    php artisan queue:restart
  • Mail transport for password reset

  • Database. SQLite online backup; PostgreSQL pg_dump.
  • APP_KEY. Encrypts credentials — without key, DB backup useless. Don’t change key without re-encrypt plan.

Test restore. Configuration export helps but not full backup — no history/credentials.

Export configuration, Cloud sign up, connected accounts same names, import. Cloud re-collects history within each history window.