在京东云服务器(如京东云的云主机CVM)上配置 PM2 守护进程,可以确保你的 Node.js 应用程序在后台稳定运行,并在崩溃或系统重启后自动恢复。以下是详细的配置步骤:
一、准备工作
-
登录京东云服务器
- 使用 SSH 登录你的京东云 Linux 服务器(如 CentOS、Ubuntu 等):
ssh root@your-server-ip
- 使用 SSH 登录你的京东云 Linux 服务器(如 CentOS、Ubuntu 等):
-
更新系统包(推荐)
# Ubuntu/Debian sudo apt update && sudo apt upgrade -y # CentOS/RHEL sudo yum update -y
二、安装 Node.js 和 npm
PM2 是基于 Node.js 的进程管理器,因此需要先安装 Node.js。
方法一:使用 nvm 安装(推荐)
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# 重新加载 shell 配置
source ~/.bashrc
# 安装最新 LTS 版本的 Node.js
nvm install --lts
# 检查是否安装成功
node -v
npm -v
方法二:直接通过包管理器安装
# Ubuntu
sudo apt install nodejs npm -y
# CentOS
sudo yum install epel-release -y
sudo yum install nodejs npm -y
三、全局安装 PM2
npm install -g pm2
验证安装:
pm2 --version
四、使用 PM2 启动 Node.js 应用
假设你的项目位于 /home/ubuntu/myapp,入口文件是 app.js。
cd /home/ubuntu/myapp
pm2 start app.js --name "my-node-app"
常用命令:
pm2 list # 查看所有进程
pm2 logs my-node-app # 查看日志
pm2 restart my-node-app # 重启应用
pm2 stop my-node-app # 停止应用
pm2 delete my-node-app # 删除应用
五、配置开机自启动
为了让 PM2 在服务器重启后自动恢复应用,需生成并启用启动脚本。
-
保存当前 PM2 进程列表
pm2 save -
生成开机启动脚本
pm2 startup执行后会输出一段命令,例如:
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u your-username --hp /home/your-username复制并执行该命令(注意替换用户名和路径)。
-
启用开机自启
pm2 save
✅ 此时即使重启服务器,PM2 也会自动拉起之前运行的应用。
六、(可选)配置反向X_X(Nginx)
如果你希望通过域名访问应用,建议使用 Nginx 反向X_X到 Node.js 应用端口(如 3000)。
示例 Nginx 配置:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
然后重启 Nginx:
sudo systemctl restart nginx
七、安全建议
- 开放防火墙端口(如 3000、80、443)。
- 使用
ufw或firewalld管理防火墙。 - 配置 HTTPS(可用 Let’s Encrypt + Certbot)。
- 不要以 root 用户运行 Node.js 应用,建议创建专用用户。
总结
在京东云服务器上配置 PM2 的核心步骤:
- 安装 Node.js
- 全局安装 PM2
- 使用
pm2 start启动应用 - 执行
pm2 startup和pm2 save实现开机自启
完成以上步骤后,你的 Node.js 应用即可由 PM2 守护,实现高可用运行。
如有更多需求(如集群模式、监控、日志轮转),可进一步查阅 PM2 官方文档。
秒懂云