安装
// 全局安装pm2,依赖node和npm
npm install -g pm2
// 安装成功后, 查看pm2版本
pm2 -V
常用命令
-
启动命令
pm2 start + 入口文件
-
通过配置文件启动
pm2 start pm2.config.js
启动成功后,控制台看见如下信息
-
查看详细状态信息
pm2 show (appname 或 id)
-
所有启动的进程列表
pm2 list
-
监控每个 node 进程的 cpu 和内存使用情况
pm2 monit
-
显示所有进程的日志信息
pm2 logs
-
停止 指定/所有 进程
pm2 stop (id 或 all)
-
重启 指定/所有 进程
pm2 restart (id 或 all)
-
杀死 指定/所有 进程
pm2 delete (id 或 all)
负载均衡
pm2 start app.js -i (number 或 max)
日志相关
pm2 install pm2-logrotate // 安装pm2-logrotate插件
配置 PM2 启动文件
pm2 start app.js pm2.config.js
// pm2.config.js
module.exports = {
apps: [
{
name: 'pm2-demo-app', // 应用名称
script: './app.js', // 启动文件地址
cwd: './', // 当前工作路径
watch: [
// 监控变化的目录,一旦变化,自动重启
'dist'
],
ignore_watch: [
// 忽视这些目录的变化
'node_modules',
'logs',
'public',
],
node_args: '--harmony', // node的启动模式
env: {
NODE_ENV: 'development', // 设置运行环境,此时process.env.NODE_ENV的值就是development
ORIGIN_ADDR: ''
},
env_production: {
NODE_ENV: 'production',
},
out_file: './logs/out.log', // 普通日志路径
error_file: './logs/err.log', // 错误日志路径
merge_logs: true,
log_date_format: 'YYYY-MM-DD HH:mm Z',
instances: 2, // 启动两个实例
},
],
};
配合pm2-web实现监控可视化
略