VPS servery

Node.js aplikace na VPS s PM2

Jak na VPS nainstalovat Node.js a spustit aplikaci nebo Discord bota přes PM2, aby běžel i po restartu.

2 min čtení·Aktualizováno 28. října 2026

PM2 drží Node.js aplikace a Discord boty spuštěné na pozadí, po pádu je nastartuje znovu a po restartu VPS je zapne. Postup je pro Debian a Ubuntu; Node.js i PM2 nainstaluje i aplikace Node.js 22 LTS + PM2 v záložce Aplikace.

1. Instalace Node.js a PM2

Verze v repozitáři distribuce bývá stará, proto použij repozitář NodeSource:

apt update && apt install -y curl
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
npm install -g pm2
node -v

2. Aplikace

Soubory nahraj třeba do /opt/muj-bot (viz Přenos souborů na VPS) a nainstaluj balíčky z package.json:

cd /opt/muj-bot
npm install --omit=dev

3. Spuštění

pm2 start index.js --name muj-bot
pm2 list

Aplikaci, která se spouští přes npm start, rozjedeš příkazem pm2 start npm --name web -- start.

4. Start po restartu VPS

pm2 startup
pm2 save

pm2 startup vytvoří službu systemd a pm2 save uloží seznam běžících aplikací. Po každém přidání nebo odebrání aplikace spusť pm2 save znovu.

Užitečné příkazy

PříkazCo dělá
pm2 logs muj-botživý výpis logu
pm2 restart muj-botrestart po změně kódu
pm2 stop muj-botzastavení
pm2 delete muj-botodebrání ze seznamu
pm2 monitCPU a RAM jednotlivých aplikací

Logy PM2 samy nemizí; rotaci zapneš příkazem pm2 install pm2-logrotate.

Tajné údaje a web

Token a hesla dej do .env ve složce aplikace a načti je balíčkem dotenv – viz Tajné údaje v .env. Webovou aplikaci na portu schováš za Nginx s HTTPS podle návodu Více webů a aplikací na jedné VPS.

Discord bot se k Discordu připojuje sám, žádný port na VPS kvůli němu otevírat nemusíš.

VPS od 299 Kč měsíčně

Vlastní virtuální server s root přístupem pro cokoliv, co potřebujete.

Zobrazit balíčky