使用PM2进程管理器管理Node.js应用程序。用于在生产环境中部署、监控和自动重启Node.js应用,包括启动应用、查看日志、设置开机自启及管理多进程。
PM2 进程管理器 : 生产 处理 处理 处理 处理 处理 处理 器 的 节点 j是一项面向实际任务的技能。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
面向 Node.js 的生产级进程管理器,内置负载均衡功能。
npm install -g pm2
# 启动一个应用 pm2 start app.js pm2 start npm --name "my-app" -- start pm2 start "npm run start" --name my-app # 指定端口或环境变量 pm2 start npm --name "my-app" -- start -- --port 3000 PORT=3000 pm2 start npm --name "my-app" -- start
# 列出进程 pm2 list pm2 ls # 查看日志 pm2 logs # 所有进程的日志 pm2 logs my-app # 指定应用的日志 pm2 logs --lines 100 # 最近 100 行日志 # 控制进程 pm2 restart my-app pm2 stop my-app pm2 delete my-app pm2 reload my-app # 零停机时间重载 # 查看信息 pm2 show my-app pm2 monit # 实时监控
# 保存当前进程列表 pm2 save # 生成开机启动脚本(按输出提示,使用 sudo 执行该命令) pm2 startup # 示例输出(请执行此命令): # sudo env PATH=$PATH:/opt/homebrew/bin pm2 startup launchd -u username --hp /Users/username
# 首先构建 npm run build # 启动生产服务器 pm2 start npm --name "my-app" -- start # 或使用 ecosystem 文件 pm2 start ecosystem.config.js
module.exports = {
apps: [{
name: 'my-app',
script: 'npm',
args: 'start',
cwd: '/path/to/app',
env: {
NODE_ENV: 'production',
PORT: 3000
}
}]
}
| 标志 | 说明 |
|---|---|
--name |
进程名称 |
--watch |
监听文件变化并自动重启 |
-i max |
集群模式(启用全部 CPU 核心) |
--max-memory-restart 200M |
内存使用超限时自动重启 |
--cron "0 * * * *" |
按 Cron 表达式定时重启 |
pm2 delete all # 删除所有进程 pm2 kill # 终止 PM2 守护进程 pm2 unstartup # 移除开机启动脚本
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 133.9万人学习
共49课时 | 82.5万人学习