Instalacja ręczna
Dla maszyn, na których instalator nie jest mile widziany: wszystko jest dostępne jako zwykłe pliki pod https://phpray.dev/dl/. Bieżący tag znajduje się w https://phpray.dev/dl/LATEST; każdy plik jest wymieniony z sumą kontrolną w sąsiednim SHA256SUMS. GitHub Releases będzie lustrem tych samych plików po upublicznieniu repozytorium.
1. Gotowe rozszerzenie
Każde wydanie zawiera gotowy phpray.so dla każdej kombinacji:
- wersja PHP: 8.1, 8.2, 8.3, 8.4 lub 8.5; gotowe buildy tylko NTS
- biblioteka libc: glibc lub musl
- architektura (amd64, arm64)
Przykład: phpray-8.3-glibc-amd64.so z https://phpray.dev/dl/v0.14.0/.
Umieść plik .so w swoim extension_dir (zob. php -i | grep extension_dir) i dodaj fragment ini, np. /etc/php/8.3/fpm/conf.d/zz-phpray.ini (na Debianie/Ubuntu powtórz go dla cli/ i apache2/):
extension=phpray.so
phpray.enabled=1
phpray.mode=smart
Następnie przeładuj procesy PHP (systemctl reload php8.3-fpm).
2. Collector
Collector jest w tym samym wydaniu jako .deb, .rpm (oba amd64) i statyczny plik binarny (phpray-collector-linux-amd64). Pakiety instalują /usr/bin/phpray-collector, alias phpray, /etc/phpray/collector.toml oraz unit phpray-collector.service:
sudo dpkg -i phpray-collector_0.14.0-5_amd64.deb # Debian / Ubuntu
sudo rpm -U phpray-collector-0.14.0-5.x86_64.rpm # RHEL family
sudo systemctl enable --now phpray-collector
Przy statycznym pliku binarnym skopiuj go do /usr/bin/phpray-collector, utwórz /etc/phpray/collector.toml (zob. Collector) oraz ten unit:
[Unit]
Description=PHPRay Collector
After=network.target
[Service]
ExecStart=/usr/bin/phpray-collector serve -c /etc/phpray/collector.toml -addr 127.0.0.1:9191
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=5
StateDirectory=phpray
LogsDirectory=phpray
PrivateTmp=no
ReadWritePaths=/var/lib/phpray /dev/shm -/tmp/phpray.jsonl
[Install]
WantedBy=multi-user.target
serve uruchamia collector, REST API i lokalny dashboard w jednym procesie; -addr wybiera adres nasłuchu (logowanie tokenem na adresie publicznym: Dashboard).
3. Kontenery
Obraz collectora nie jest jeszcze publikowany. We własnych obrazach:
- obraz PHP dostaje
.sopasujący do jego wersji PHP i libc (musldlaphp:*-alpine) oraz powyższy fragment ini; - kontener collectora uruchamia statyczny plik binarny:
phpray-collector serve -c /etc/phpray/collector.toml -addr 0.0.0.0:9191; - oba kontenery współdzielą ścieżkę pamięci współdzielonej (
phpray.shm_path, domyślnie/dev/shm/phpray), np. jeden wolumen zamontowany w obu pod/dev/shm/phpray, a collector trzyma bazę na trwałym wolumenie pod/var/lib/phpray.
4. Kompilacja ze źródeł
Repozytorium źródłowe nie jest jeszcze publiczne, więc na dziś nie ma budowania ze źródeł; użyj gotowych plików powyżej. Rozszerzenie jest standardowym modułem phpize (phpize && ./configure && make && sudo make install) i tak będzie się budować po upublicznieniu repozytorium.
docs-site/docs/install/manual.md · PHPRay 0.14Wersja polska jest tłumaczeniem angielskiego oryginału; parametry i przykłady kodu pozostają w oryginalnej składni.