Przejdź do głównej zawartości

Uruchom Metribay u siebie

Edycja self-hosted, zwana też Edycja personalna, to Metribay na Twoim serwerze. Jest bezpłatna i open source na licencji Apache-2.0.

Self-hosted Metribay Cloud
Koszt Bezpłatnie Zobacz Plany i rozliczenia
Osoby Jedna Zespoły z rolami
Obszary robocze Jeden w tle Do 5
Projekty i źródła Bez limitu 10 i 50 aktywnych
Integracje Wszystkie siedem Wszystkie siedem
Aktualizacje, backup, uptime Ty My
Przycisk Google sign-in Własna aplikacja Google Gdy dostępny — od nas

Wybierz self-hosting, jeśli ogarniasz aplikację PHP i chcesz wszystko na własnym sprzęcie. Wybierz Cloud, jeśli nie chcesz pilnować serwera albo pracujesz z innymi.

  • PHP 8.5+ z rozszerzeniami cURL, OpenSSL, PDO (SQLite lub PostgreSQL), intl i mbstring
  • Composer 2
  • SQLite (osobista instalacja) lub PostgreSQL
  • Sposób utrzymania dwóch procesów w tle (systemd, Supervisor) i cron
  • Node 24 tylko jeśli chcesz przebudować frontend. W release są gotowe assety.
  1. Uruchom skrypt setup z katalogu głównego repozytorium, potem przejdź do aplikacji:

    Terminal window
    ./scripts/setup.sh
    cd standalone
  2. Utwórz konto. Polecenie pyta o hasło prywatnie:

    Terminal window
    php artisan metribay:install [email protected]
  3. Uruchom serwer WWW. Na szybki test lokalny:

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

    W produkcji serwuj katalog standalone/public przez HTTPS własnym serwerem WWW.

  4. Uruchom worker kolejki i scheduler jako osobne długie procesy:

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

    W produkcji worker pod process managerem; zamiast schedule:work jeden wpis cron co minutę: php artisan schedule:run.

Zaloguj się e-mailem i hasłem z instalacji. Rejestracja wyłączona — instalacja należy do jednego utworzonego konta.

Scheduler startuje zbieranie co cztery godziny, monitory uptime co godzinę i pełne odświeżenie historii raz w tygodniu — jak w Cloud. Zbieranie działa tylko, gdy działają worker kolejki i scheduler.

Synchronizacja ręczna:

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

Każda integracja działa na Twoich danych logowania, jak w przewodnikach integracji. Nic nie przechodzi przez serwery Metribay.

Przycisk Połącz Google dla Analytics i Search Console — własny klient OAuth:

  1. W Google Cloud włącz Analytics Admin, Analytics Data i Search Console API.

  2. Utwórz klienta OAuth typu Web application z redirect URI (Twój adres): https://metribay.example.com/integrations/google/callback

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

W trybie testowym aplikacji Google logowania wygasają po siedmiu dniach. Konta usługi tego problemu nie mają.

  • HTTPS, APP_ENV=production, APP_DEBUG=false.

  • .env, baza i backupy poza publicznym katalogiem WWW.

  • Nie cache’uj stron zalogowanych na CDN/proxy.

  • Po aktualizacji: migracje, assety, restart workera:

    Terminal window
    php artisan migrate --force
    php artisan vendor:publish --tag=metribay-assets --force
    php artisan queue:restart
  • Skonfiguruj pocztę, żeby reset hasła dochodził.

Backupuj osobno:

  • Bazę danych. SQLite: online backup SQLite, nie kopiuj pliku w użyciu. PostgreSQL: pg_dump.
  • APP_KEY. Zapisane dane logowania są nim szyfrowane. Bez klucza backup bazy nie odszyfruje danych. Nie zmieniaj klucza bez planu ponownego szyfrowania.

Testuj odtwarzanie od czasu do czasu. Eksport konfiguracji też się przydaje, ale to nie pełny backup — bez historii i bez danych logowania.

Eksportuj konfigurację, załóż konto Cloud, dodaj połączone konta z tymi samymi nazwami i importuj plik. Cloud zbierze historię ponownie u dostawców w oknie historii każdego źródła.