Nainstalování mod proxy do apache
# a2enmod proxy proxy_http proxy_http2
# apache2ctl graceful
do virtualhost se přidá:
ProxyRequests on
ProxyPass / http://127.0.0.1:3000/
teď se už může pustit ručně
$ node aplikace.js
a server naběhne na požadované url. Aby přežil restart, musí se ale spustit jako služba, k čemuž nám pomůže pm2
# npm install pm2 -g
su user
$ pm2 start aplikace.js
Start and Daemonize any application:
$ pm2 start app.js
Monitor in production:
$ pm2 monitor
Teď, když se proces restartuje, tak naběhne znovu.
Přidání do systemd, aby aplikace přežila startup
#su nodeuser
$ cd
$ npm install pm2
$ pm2 start nodeapp.js
$ pm2 startup
[PM2] Init System found: systemd
[PM2] To setup the Startup Script, copy/paste the following command:
$ sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u nodeuser –hp /var/www/nodeapp
$ pm2 save
$ systemctl status pm2-node_svojgr_com
[PM2] Remove init script via:
#$ pm2 unstartup systemd
env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 unstartup systemd -u node_svojgr_com –hp /var/www/node.svojgr.com
$ pm2 list
┌──────────┬────┬──────┬─────┬─────────┬─────────┬────────┬─────┬────────┬──────┬──────────┐
│ App name │ id │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├──────────┼────┼──────┼─────┼─────────┼─────────┼────────┼─────┼────────┼──────┼──────────┤
│ node │ 0 │ fork │ 0 │ errored │ 15 │ 0 │ 0% │ 0 B │ user │ disabled │
└──────────┴────┴──────┴─────┴─────────┴─────────┴────────┴─────┴────────┴──────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
[/c]
Pro restart aplikaceu
$ pm2 restart nazevAplikace
Reload aplikace, který ukončí proces až po spuštění nového:
$ pm2 reload nazevAplikace
Nebo ještě lépe, poslat pouze signál o vypnutí, před kterým se můžou aplikace postarat o ukončení
$ pm2 gracefulReload nazevAplikace
process.on(‘message’, function(msg) {
if (msg === ‘shutdown’) {
writeSomeDataToCache();
process.exit(0);
}
});
Spuštění na všech vláknech
$ pm2 start nazevAplikace -i max
změna počtu vláken
$ pm2 scale nazev 8
$ pm2 scale nazev +2
Odstranění vláken
$ pm2 delete node
$ pm2 kill
Žádný komentář do teď