PM2是什么 PM2(Process Manager 2 )是具有内置负载均衡器的Node.js应用程序的生产运行时和进程管理器。 它允许您永久保持应用程序活跃,无需停机即可重新加载它们,并促进常见的Devops任务。
  • 日志管理:应用程序日志保存在服务器的硬盘中~/.pm2/logs/
  • 终端监控:可以在终端中监控您的应用程序并检查应用程序运行状况(CPU使用率,使用的内存,请求/分钟等)。
  • SSH部署:自动部署,避免逐个在所有服务器中进行ssh。
  • 多平台支持:适用于Linux(稳定)和macOS(稳定)和Windows(稳定)

PM2安装 先安装nodejs,安装教程:NodeJS安装及部署(Linux系统)

然后全局安装pm2

#npm方式
npm install pm2 -g
 
#yarn方式
yarn global add pm2
 
#linux
apt update && apt install sudo curl && curl -sL https://raw.githubusercontent.com/Unitech/pm2/master/packager/setup.deb.sh | sudo -E bash -

PM2命令方式

启动服务

pm2 start app.js                //启动app.js应用
pm2 start app.js --name demo    //启动应用并设置name
pm2 start app.sh                //脚本启动

停止服务

pm2 stop all               //停止所有应用
pm2 stop [AppName]        //根据应用名停止指定应用
pm2 stop [ID]             //根据应用id停止指定应用

删除应用

pm2 delete all               //关闭并删除应用
pm2 delete [AppName]        //根据应用名关闭并删除应用
pm2 delete [ID]            //根据应用ID关闭并删除应用

创建开机自启动

pm2 startup

更新PM2

pm2 updatePM2
pm2 update

重新启动

pm2 restart app.js        //同时杀死并重启所有进程。短时间内服务不可用。生成环境推荐使用reload

查看启动列表

pm2 list

查看每个应用程序占用情况

pm2 monit  //监视所有进程

显示应用程序所有信息

pm2 show [Name]      //根据name查看
pm2 show [ID]        //根据id查看

日志查看

pm2 logs            //查看所有应用日志
pm2 logs [Name]    //根据指定应用名查看应用日志
pm2 logs [ID]      //根据指定应用ID查看应用日志