pm2学习使用
一、pm2 安装
npm install -g pm2
二、pm2 常用命令
pm2 start app.js --watch # 当文件变化时自动重启应用
pm2 start script.sh # 启动 bash 脚本
pm2 list # 列表 PM2 启动的所有的应用程序
pm2 monit # 显示每个应用程序的CPU和内存占用情况
pm2 show [app-name] # 显示应用程序的所有信息
pm2 logs # 显示所有应用程序的日志
pm2 stop all # 停止所有的应用程序
pm2 stop 0 # 停止 id为 0的指定应用程序
pm2 restart all # 重启所有应用
pm2 reload all # 重启 cluster mode下的所有应用
pm2 delete all # 关闭并删除所有应用
pm2 delete 0 # 删除指定应用 id 0
pm2 scale api 10 # 把名字叫api的应用扩展到10个实例pm2 reset [app-name] # 重置重启数量
pm2 startup # 创建开机自启动命令
pm2 save # 保存当前应用列表
pm2 resurrect # 重新加载保存的应用列表
三、pm2 管理非node应用
以redis为例 pm2使用简单教程
1. 如图创建 redis-server.json
创建过程:
[root@VM_0_16_centos ~]# vim redis-server.json
{ "name": "redis-server", "script": "redis-server", "args": [ "/usr/local/redis/bin/redis.conf", ], "exec_interpreter": "", "exec_mode": "fork" }
对上述代码块解释: 因为有更好的文章,不班门弄斧,推荐 -> nodejs使用pm2进行进程管理,自动重启,袒护其它命令行程序.
:wq
2. redis 交给 pm2管理
[root@VM_0_16_centos ~]# pm2 start /usr/local/redis/bin/redis-server.json
3. 保存 pm2
[root@VM_0_16_centos ~]# pm2 save
4. 开机运行pm2
[root@VM_0_16_centos ~]# pm2 startup
四、linux 服务器重启pm2 list列表为空
产生原因:
pm2管理应用后没有保存[root@VM_0_16_centos ~]# pm2 save
pm2没有加人开启启动
[root@VM_0_16_centos ~]# pm2 startup