pm2常用命令
常用命令整理
1. 启动
pm2 start app.js # 启动app.js应用程序 pm2 start app.js --name my-api #my-api为PM2进程名称 pm2 start app.js -i 4 #根据CPU核数启动进程个数。# cluster mode 模式启动4个app.js的应用实例 # 4个应用程序会自动进行负载均衡 pm2 start app.js --watch #实时监控app.js的方式启动,当app.js文件有变动时,pm2会自动reload
2. 查看进程、监控
#-------查看-------- pm2 list # 列表 PM2 启动的所有的应用程序 pm2 show [app-name] # 显示应用程序的所有信息 pm2 show 0 #或者下面 pm2 info 0 #查看进程详细信息,0为PM2进程id #------监控--------- pm2 monit # 显示每个应用程序的CPU和内存占用情况
3.停止、删除
#------停止--------- pm2 stop all #停止PM2列表中所有的进程 pm2 stop 0 #停止PM2列表中进程为0的进程 #------删除--------- pm2 delete all #删除PM2列表中所有的进程 pm2 delete 0 #删除PM2列表中进程为0的进程
4. 重载、重启
#------重载------- pm2 reload all #重载PM2列表中cluster mode下所有的进程 pm2 reload 0 #重载PM2列表中进程为0的进程 #------重启--------- pm2 restart all #重启PM2列表中所有的进程 pm2 restart 0 #重启PM2列表中进程为0的进程 #------重置重启------ pm2 gracefulReload all # Graceful reload all apps in cluster mode pm2 reset [app-name] # 重置重启数量
5. 系统命令
pm2 startup # 创建开机自启动命令 pm2 save # 保存当前应用列表 pm2 resurrect # 重新加载保存的应用列表 pm2 update # Save processes, kill PM2 and restore processes pm2 generate # Generate a sample json configuration file
6.远程操作
pm2 deploy app.json prod setup # Setup "prod" remote server pm2 deploy app.json prod # Update "prod" remote server pm2 deploy app.json prod revert 2 # Revert "prod" remote server by 2
7. 日志操作
pm2 logs # 显示所有应用程序的日志 pm2 logs [app-name] # 显示指定应用程序的日志 pm2 logs [--raw] #Display all processes logs in streaming pm2 flush #Empty all log file pm2 reloadLogs #Reload all logs
8. 安装、升级、卸载
npm install pm2@lastest -g #安装最新的PM2版本 pm2 updatePM2 #升级pm2 pm2 module:generate [name] # Generate sample module with name [name] pm2 install pm2-logrotate # Install module (here a log rotation system) pm2 uninstall pm2-logrotate # Uninstall module pm2 publish # Increment version, git push and npm publish
9.其他命令
pm2 start script.sh # 启动 bash 脚本 pm2 scale api 10 # 把名字叫api的应用扩展到10个实例 pm2 reset [app-name] # 重置重启数量
10. 更多命令
pm2 --help