pm2介绍
pm2是nodejs的一个带有负载均衡功能的应用进程管理器的模块,类似有Supervisor,forever,用来进行进程管理。
对于线上的项目,如果直接使用npm启动项目,报错了可能直接停止导致整个服务崩溃,终端关掉的话也可能导致项目停止。
使用
在项目中的package.json中写入pm2脚本:
"scripts": {
"dev": "nuxt",
"build": "nuxt build && npm start",
"start": "nuxt start",
"generate": "nuxt generate",
"lint": "eslint --ext .js,.vue .",
"precommit": "npm run lint",
"pm2": "pm2 start npm --name 'blog' -- run build --watch"
}
在服务器上使用的时候直接yarn pm2就可以启动项目了
pm2常用的命令
命令 | 描述 |
---|---|
pm2 start |
启动项目 |
pm2 list | 查看进程 |
pm2 show 0 或者 # pm2 info 0 | 查看进程详细信息,0为PM2进程id |
pm2 monit | 进入监视页面,监视每个node进程的CPU和内存的使用情况 |
pm2 stop all | 停止PM2列表中所有的进程 |
pm2 stop 0 | 停止PM2列表中进程为0的进程 |
pm2 reload all | 重载PM2列表中所有的进程 |
pm2 reload 0 | 重载PM2列表中进程为0的进程 |
pm2 restart all | 重启PM2列表中所有的进程 |
pm2 restart 0 | 重启PM2列表中进程为0的进程 |
pm2 delete 0 | 删除PM2列表中进程为0的进程 |
pm2 delete all | 删除PM2列表中所有的进程 |
pm2 logs | 显示所有进程的日志 |
pm2 logs 0 | 显示进程id为 0 的日志 |
pm2 flush | 清空所有日志文件 |
pm2 reloadLogs | 重载所有日志 |
npm install pm2@lastest -g | 安装最新的PM2版本 |
pm2 updatePM2 | 升级pm2 |
pm2 --help | 查看更多的命令 |