What's new
Panelica Community Forum

Welcome to the official Panelica Community Forum — the central hub for server administrators, developers, and hosting professionals. Register a free account today to access technical discussions, product announcements, feature requests, and direct support from the Panelica team. Be part of the growing community shaping the future of server management.

Solved dağıtım düğmesinden tetikleyince çalışıyor pipeline çalıştırdan tetikleyince çalışmıyor

Sorun ve çözüm özeti:

Deploy pipeline'ın çalıştığı ortam (/opt/panelica/var/chroot/tailadmin), SSH oturumların kullandığı
namespace'ten farklı, minimal bir SFTP jail'iydi — sadece temel coreutils içeriyordu, Node.js hiç
yoktu. Bu yüzden panel üzerinden deploy tetiklendiğinde npm: command not found (exit 127) hatası
alıyordun; oysa SSH'tan manuel npm --version çalıştığında sorun yoktu çünkü o farklı (namespace) bir
ortamı kullanıyor.

Yaptığım kalıcı değişiklik:
- /opt/panelica/services/nodejs/24 (Node LTS) chroot'a read-only bind-mount edildi ve /etc/fstab'a
eklendi (reboot sonrası da kalıcı).
- node/npm/npx chroot'un usr/bin'ine symlink'lendi.
- Node'un ihtiyaç duyduğu 4 eksik paylaşım kütüphanesi (libdl, libstdc++, libgcc_s, libpthread)
chroot'un mevcut kütüphane yapısına, aynı isimlendirme kuralına uyularak eklendi.

Not: Bu değişiklik sadece tailadmin kullanıcısını kapsıyor. Panelde başka Node.js tabanlı deploy
kullanan/kullanacak müşteri varsa, aynı düzeltmeyi onların chroot'larına da uygulamak gerekir —
istersen bunu genel bir prosedür haline getirebiliriz.
 
Root cause fixed. Node.js versions installed from the panel live under the panel's services directory and were on nobody's PATH, so a pipeline shell step (and an SSH session) got "npm: command not found" (exit 127) — while the distro package from Package Manager worked because it lands in /usr/bin.

The panel now exposes the installed Node.js runtime to SSH login shells, to Git pipeline steps, and inside isolated sessions, so node/npm resolve without any manual setup. Verified end-to-end (real SSH + a pipeline "npm --version" step). Ships in the next update.
 
Back
Top