速卖通素材
努力

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

服务器

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


✅ 一、准备工作

  1. 登录京东云服务器
    使用 SSH 登录到你的京东云 Linux 实例(如 CentOS、Ubuntu 等):

    ssh root@你的公网IP
  2. 更新系统包(可选)

    # Ubuntu/Debian
    sudo apt update && sudo apt upgrade -y
    
    # CentOS/RHEL
    sudo yum update -y
  3. 安装 Node.js 和 npm
    推荐使用 nvm 安装 Node.js,便于版本管理。

    # 安装 nvm
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
    
    # 重新加载 shell 配置
    source ~/.bashrc
    
    # 安装最新 LTS 版本的 Node.js
    nvm install --lts
    
    # 验证安装
    node -v
    npm -v

✅ 二、安装 PM2

npm install -g pm2

验证安装:

pm2 --version

✅ 三、启动你的 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 startup

输出会提示你运行一条命令,例如:

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

注意:请复制并运行 pm2 startup 输出的实际命令。

然后保存当前进程列表:

pm2 save

这样,下次系统重启时,PM2 会自动拉起之前运行的应用。


✅ 五、(可选)配置反向X_X(Nginx)

如果你希望用域名访问,建议配合 Nginx 反向X_X。

  1. 安装 Nginx:

    sudo apt install nginx     # Ubuntu/Debian
    sudo yum install nginx     # CentOS
  2. 配置 Nginx(示例):
    编辑 /etc/nginx/sites-available/default 或新建站点文件:

    server {
       listen 80;
       server_name your-domain.com;
    
       location / {
           proxy_pass http://127.0.0.1:3000;  # 假设你的 Node.js 应用监听 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;
       }
    }
  3. 测试并重启 Nginx:

    sudo nginx -t
    sudo systemctl restart nginx

✅ 六、安全建议

  1. 开放端口:在京东云控制台的安全组中,放行你需要的端口(如 80、443、3000 等)。
  2. 使用 HTTPS:建议使用 Let’s Encrypt + Certbot 配置 SSL。
  3. 非 root 用户运行:避免以 root 身份运行 Node.js 应用,提高安全性。

✅ 七、常见问题排查

  • PM2 启动失败? 检查 Node.js 是否安装成功,路径是否正确。
  • 应用无法访问? 检查防火墙、安全组、端口监听情况(netstat -tuln | grep 3000)。
  • 日志查看pm2 logs 是排查问题的关键。

总结

通过以上步骤,你已经成功在京东云服务器上配置了 PM2 守护进程,实现了:

  • Node.js 应用后台运行
  • 崩溃自动重启
  • 系统重启后自动启动
  • 日志管理和监控

如有需要,还可以结合 pm2 ecosystem 配置更复杂的部署流程。

如需进一步帮助,可提供你的系统类型和 Node.js 项目结构,我可以给出更具体的配置文件示例。

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