京东云服务器如何配置PM2守护进程?

在京东云服务器(如京东云的云主机CVM)上配置 PM2 守护进程,可以确保你的 Node.js 应用程序在后台稳定运行,并在崩溃或系统重启后自动恢复。以下是详细的配置步骤:


一、准备工作

  1. 登录京东云服务器

    • 使用 SSH 登录你的京东云 Linux 服务器(如 CentOS、Ubuntu 等):
      ssh root@your-server-ip
  2. 更新系统包(推荐)

    # 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 在服务器重启后自动恢复应用,需生成并启用启动脚本。

  1. 保存当前 PM2 进程列表

    pm2 save
  2. 生成开机启动脚本

    pm2 startup

    执行后会输出一段命令,例如:

    sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u your-username --hp /home/your-username

    复制并执行该命令(注意替换用户名和路径)。

  3. 启用开机自启

    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)。
  • 使用 ufwfirewalld 管理防火墙。
  • 配置 HTTPS(可用 Let’s Encrypt + Certbot)。
  • 不要以 root 用户运行 Node.js 应用,建议创建专用用户。

总结

在京东云服务器上配置 PM2 的核心步骤:

  1. 安装 Node.js
  2. 全局安装 PM2
  3. 使用 pm2 start 启动应用
  4. 执行 pm2 startuppm2 save 实现开机自启

完成以上步骤后,你的 Node.js 应用即可由 PM2 守护,实现高可用运行。

如有更多需求(如集群模式、监控、日志轮转),可进一步查阅 PM2 官方文档。

未经允许不得转载:秒懂云 » 京东云服务器如何配置PM2守护进程?