PM2 服务器服务运维入门指南

PM2 服务器服务运维入门指南

一、PM2 简介

PM2 是一个 Node.js 应用的进程管理器,支持守护进程、监控、日志管理等功能,也支持运行 Python、Shell 等脚本。

二、常用命令速查

1. 查看运行状态

bash 复制代码
pm2 ps                    # 查看所有运行中的服务(简写)
pm2 list                  # 同上,完整写法
pm2 ls                    # 同上

2. 查看服务详情

bash 复制代码
pm2 info <id|name>        # 查询服务详细信息(包括部署目录)
# 示例
pm2 info 7                # 查询ID为7的服务详情
pm2 info 10               # 查询ID为10的服务详情

3. 进入服务目录

bash 复制代码
cd /opt/jingjiawei/middleearth   # 根据 pm2 info 查到的路径进入

4. 服务启停管理

bash 复制代码
pm2 restart <id|name>     # 重启服务
pm2 stop <id|name>        # 停止服务
pm2 start <id|name>       # 启动已停止的服务
pm2 delete <id|name>      # 删除服务(从PM2列表中移除)

三、启动新服务

1. 启动 Node.js 服务

bash 复制代码
pm2 start "node --env-file=.env.development src/worker.js" --name <service_name>

示例:

bash 复制代码
pm2 start "node --env-file=.env.development src/worker.js" --name my-worker

2. 启动 FastAPI 服务(Python)

bash 复制代码
pm2 start "uvicorn app.main:app --host 0.0.0.0 --port 8019" --name <service_name>

示例:

bash 复制代码
pm2 start "uvicorn app.main:app --host 0.0.0.0 --port 8019" --name fastapi-app

四、其他常用命令

bash 复制代码
pm2 logs                 # 查看所有服务日志
pm2 logs <id|name>       # 查看指定服务日志
pm2 monit                # 实时监控面板(CPU/内存)
pm2 save                 # 保存当前进程列表(开机自启用)
pm2 startup              # 生成开机自启动配置
pm2 reload all           # 零停机重载所有服务(仅cluster模式)

五、实战操作流程

场景:排查和重启服务

bash 复制代码
# 1. 查看服务运行情况
pm2 ps

# 2. 找到问题服务的ID(比如7),查看详情获取部署目录
pm2 info 7

# 3. 进入服务目录
cd /opt/jingjiawei/middleearth

# 4. 重启服务
pm2 restart 7

# 5. 查看日志确认启动成功
pm2 logs 7 --lines 50

六、注意事项

操作 说明
restart 重启服务,会有短暂停机
reload 零停机重载(需 cluster 模式)
stop 仅停止,进程列表保留
delete 完全移除,需重新 add 才能启动

💡 提示 :启动服务时建议使用有意义的 --name,方便后续管理和查找。

相关推荐
Gofarlic_oms14 小时前
利用API实现ANSYS许可证管理自动化集成
运维·服务器·开发语言·matlab·自动化·负载均衡
档案宝档案管理5 小时前
权限分级管控,全程可追溯,筑牢会计档案安全防线
运维·网络·人工智能
AI+程序员在路上5 小时前
VS Code 完全使用指南:下载、安装、核心功能与 内置AI 编程助手实战
开发语言·人工智能·windows·开源
倔强的石头1067 小时前
【Linux指南】基础IO系列(八):实战衔接 —— 给微型 Shell 添加完整重定向功能
linux·运维·服务器
观北海7 小时前
AiScan-N:AI全自动化渗透测试工具的深度技术解析
运维·自动化
Ujimatsu7 小时前
虚拟机安装Ubuntu 26.04.x及其常用软件(2026.4)
linux·运维·ubuntu
冰暮流星8 小时前
javascript事件案例-全选框案例
服务器·前端·javascript
别来无恙blwy8 小时前
windows MongoDB升级-自动升级脚本-自动检测升级到任意版本
数据库·windows·mongodb
Agent产品评测局10 小时前
制造业生产调度自动化落地,完整步骤与避坑指南:2026企业级智能体选型与实战全景
运维·人工智能·ai·chatgpt·自动化
狂奔的sherry10 小时前
一次由 mount 引发的 Linux 文件系统“错觉”
linux·运维·服务器