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,方便后续管理和查找。

相关推荐
何中应2 小时前
Alertmanager设置邮件通知
运维·自动化·prometheus
CHANG_THE_WORLD2 小时前
PDFIUM如何处理宽度数组
java·linux·服务器
孙同学_2 小时前
【Linux篇】应用层自定义协议与序列化
linux·服务器·网络
沉迷学习 日益消瘦2 小时前
(windows环境)白嫖阿里云百炼免费 Token 使用 Claude 教程
windows·阿里云·claude·token·百炼
航Hang*2 小时前
第3章:Linux系统安全管理——第1节:Linux 防火墙部署(firewalld)
linux·服务器·网络·学习·系统安全·vmware
桦02 小时前
【Linux复习】:多线程
linux·运维
云飞云共享云桌面2 小时前
SolidWorks三维设计不用单独买电脑,1台服务器10个设计用
运维·服务器·数据库·3d·电脑
Rabbit_QL2 小时前
从服务器拷文件到本地:scp 与 rsync 实战
服务器
acaad2 小时前
访问信创系统的服务器报错Received fatal alert: handshake_failure
运维·服务器