Zpět do centra nápovědy
Návod

Autorestarter pro PM2 - Node.js aplikace

Postup a doporučení od týmu exon.io.

Automatické spuštění aplikací v PM2 po restartu

PM2 Auto Restarter slouží k tomu, aby se aplikace běžící pod PM2 automaticky znovu spustily po restartu serveru, například při:

  • plánované údržbě hostingu,

  • restartu systému,

  • neočekávaném výpadku.

Díky tomu není nutný ruční zásah administrátora a aplikace se sama obnoví do posledního uloženého stavu.

 

Jaké řešení se používá?

Řešení využívá kombinaci:

  • Bash skriptu, který obnoví uložený stav PM2 (pm2 resurrect)

  • Cron Jobu, který skript pravidelně spouští

Tento postup je univerzální a funguje pro libovolnou Node.js aplikaci spravovanou pomocí PM2.

 

Jak vytvořit Bash skript pro obnovení PM2?

V domovském adresáři hostingu vytvořte soubor:

pm2_resurrect.sh

 

Do souboru vložte následující obsah. Upravte cesty podle umístění vaší aplikace a Node.js prostředí

 

#!/bin/bash

# Aktivace Node.js prostředí a přechod do adresáře aplikace
source /home/uživatel/nodevenv/aplikace/XX/bin/activate \
&& cd /home/uživatel/aplikace

pm2 resurrect

 

Jak nastavit oprávnění pro spuštění skriptu?

Po vytvoření souboru nastavte spustitelné oprávnění:

chmod +x pm2_resurrect.sh

 

Jak nastavit Cron Job v cPanelu?

  1. Přihlaste se do cPanelu
  2. Otevřete sekci Cron Jobs
  3. Vytvořte nový Cron Job s frekvencí každou minutu
  4. Do pole Command vložte cestu ke skriptu, například:
/home/uživatel/pm2_resurrect.sh

Cron Job zajistí, že po restartu serveru dojde k automatickému obnovení všech aplikací spravovaných PM2.

 

Je potřeba PM2 nějak připravit předem?

Ano, stav běžících aplikací musí být uložen:

pm2 save

 

Co všechno se po restartu obnoví?

  • běžící aplikace

  • jejich názvy

  • počet instancí

  • parametry spuštění

Neobnovují se změny, které nebyly uloženy pomocí pm2 save.

 

Zpětná vazba

Byla tato odpověď nápomocná?

Vaše odpověď nám pomůže návody dále zlepšovat.