Son doğrulama: Eylül 2026 · Ubuntu 24.04 test sunucusunda denendi
Hızlı çözüm
Node.js PM2 kurulumu Ubuntu VPS’te üç adımda tamamlanır: NodeSource deposundan Node.js’i kurun, npm install -g pm2 ile PM2’yi ekleyin, uygulamanızı pm2 start app.js --name uygulama komutuyla arka planda başlatın. PM2, uygulama çökerse otomatik yeniden başlatır ve sunucu yeniden başlasa bile ayakta kalmasını sağlar.
apt-get install nodejsnpm install -g pm2pm2 start app.js --name uygulamapm2 list| Panel | Yok (SSH / terminal) |
|---|---|
| Sistem | Ubuntu 22.04/24.04 (VPS/VDS) |
| Yetki | root ya da sudo |
| Narhost ürünü | VPS Sunucu, VDS Sunucu |
Başlamadan önce
Narhost VPS ve VDS ürünleri yönetimsizdir; işletim sistemi hazır gelir, uygulama çalıştırma ortamını sunucunuzda siz kurarsınız. Bir Node.js uygulamasını (API, gerçek zamanlı servis, küçük bir web uygulaması) terminalden node app.js ile başlatırsanız, SSH oturumunu kapattığınız an uygulama da durur ve bir hata aldığında kendini yeniden başlatmaz. PM2, Node.js için tasarlanmış bir process yöneticisidir; uygulamayı arka planda daemon olarak tutar, çökme durumunda otomatik yeniden başlatır ve tek komutla birden fazla kopyasını (cluster modu) çalıştırabilir.
Node.js PM2 kurulumu bu yüzden tek başına bir “kurulum” değil, uygulamanızı üretim ortamında güvenilir çalıştırmanın standart yoludur; PM2 olmadan çalışan bir Node.js uygulaması, sunucu yeniden başladığında ya da kod bir istisna fırlattığında sessizce durur. PM2’nin süreç yönetimi, log takibi ve cluster modu PM2’nin resmi belgesinde ayrıntılı anlatılır.

curl -fsSL https://deb.nodesource.com/setup_lts.x -o /tmp/nodesource_setup.shbash /tmp/nodesource_setup.sh
Beklenen sonuç: Repository configured successfully. satırı ve “To install Node.js, run: apt install nodejs -y” mesajı. Hangi sürümün güncel LTS olduğunu Node.js’in resmi sürüm takviminden kontrol edebilirsiniz.
apt-get install -y nodejs
Beklenen sonuç: kurulum biter, node -v test sunucusunda v24.21.0 döndürdü (LTS sürüm numarası zamanla değişir).
npm install -g pm2
Beklenen sonuç: added 77 packages benzeri bir özet; pm2 --version sürüm numarasını gösterir (test sunucusunda 7.0.4).
cd /yol/uygulamapm2 start app.js --name uygulama
Beklenen sonuç: bir tablo çıkar, status sütununda online yazar. Test sunucusunda örnek bir uygulama aynı komutla saniyeler içinde online durumuna geçti ve curl ile isteğe yanıt verdi.
pm2 startuppm2 save
Beklenen sonuç: pm2 startup bir systemctl komutu önerir; o komutu çalıştırıp ardından pm2 save ile mevcut süreç listesini kaydedersiniz.
Dikkat
PM2’yi root kullanıcısıyla kurup pm2 startup çalıştırdıysanız otomatik açılış root’a bağlanır. Uygulamayı ayrı bir kullanıcıyla çalıştırmak istiyorsanız pm2 startup komutunu o kullanıcı altında tekrar çalıştırın.
Sonuç
pm2 list komutunda uygulamanızın status sütunu online görünüyorsa ve curl http://127.0.0.1:PORT ile beklenen yanıtı alıyorsanız kurulum tamamlanmıştır. Test sunucusunda örnek bir HTTP uygulaması bu şekilde doğrulandı; pm2 show uygulama komutu çalışma süresini, log dosyası yollarını ve yeniden başlama sayısını ayrıca gösterir.
0.0.0.0 yerine 127.0.0.1‘e bağlı dinlediğini kontrol edin; dışarıdan erişim gerekiyorsa uygulamanın önüne bir Nginx ters proxy koyun.node -v ile kurulumu doğrulayın.Narhost desteği
Kurulum sırasında takılırsanız destek talebinize sunucunuzun işletim sistemi sürümünü, node -v ve pm2 --version çıktısını ve aldığınız tam hata mesajını ekleyin.
Hayır, ikisi ayrı yaklaşımdır. PM2 tek sunucuda süreç yönetimi sağlar; Docker’ı yalnızca uygulamanızı izole bir konteynerde çalıştırmak istiyorsanız tercih edersiniz.
Sunucu kaynağınız yettiği sürece sınır yoktur; her uygulamayı pm2 start ile ayrı bir isimle ekler, pm2 list ile hepsini tek ekrandan izlersiniz.
Yalnızca pm2 startup ve pm2 save komutlarını çalıştırdıysanız. Bu iki komut olmadan PM2 süreçleri yeniden başlatmada kalıcı olmaz.
Bu makale sorununuzu çözdü mü?
Geri bildiriminiz için teşekkürler.
Çözemediniz mi?
Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.