PM2 — это процесс-менеджер для Node.js-приложений.
На общем хостинге PM2 может быть полезен для управления Telegram-ботами, API, или веб-приложениями.
Итак, у нас имеется бот, который мы установили на хостинге. (Как установить Node.js)
1. Нужно войти в виртуальное окружение проекта.
Для этого подключаемся по ssh, или открываем Терминал в cpanel. Вставляем команду для виртуального окружения вашего проекта.
2. Теперь нужно установить PM2 через npm:
npm install pm2 -g
и проверить его установку можно командой:
pm2 -v
3. Запустить бота через PM2:
pm2 start app.js --name my-app
где app.js - это название файла,
my-app - имя процесса для PM2
например:
pm2 start app.js --name nodejs-bot - запускает файл app.js и присваивает процессу имя nodejs-bot
4. Теперь сохраним текущую конфигурацию.
pm2 save
Также можно создать cron для автоматического входа в виртуальное окружение и восстановления списка сохраненных процессов (например, каждый час).
source /home/sampleuz/nodevenv/nodebot.sample.uz/22/bin/activate && cd /home/sampleuz/nodebot.sample.uz && pm2 resurrect >/dev/null 2>&1
где source /home/sampleuz/nodevenv/nodebot.sample.uz/22/bin/activate && cd /home/sampleuz/nodebot.sample.uz - команда вашего виртуального окружения
pm2 resurrect - восстанавливает сохраненную конфигурацию
5. Управление приложением с помощью PM2:
pm2 stop my-app Остановить приложение
pm2 restart my-app Перезапустить приложение
pm2 list Посмотреть список процессов
pm2 delete my-app Удалить процесс
Файл тестового бота - скачать