You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CentOS上用pm2等进程管理器后台运行React开发服务器?

用PM2在CentOS后台运行React开发服务器

当然可以用PM2实现!我之前在开发React项目时也有过同样的需求——想用进程管理器统一管理后台服务,比nohup npm start &灵活太多。下面是一步步的实操方案,帮你搞定这个问题:

1. 先确保PM2已安装

如果还没装PM2,先全局安装:

npm install pm2 -g
# 或者用yarn
yarn global add pm2

2. 两种启动方式任选

方式一:直接用命令启动

在你的React项目根目录下,执行这条命令:

pm2 start npm --name "react-dev-server" -- start
  • --name 给进程起个辨识度高的名字,方便后续管理
  • -- 是关键!用来分隔PM2的参数和npm的参数,不然PM2会把start当成自己的参数处理,这可能是你之前失败的原因之一

方式二:用配置文件启动(更灵活)

如果需要自定义日志路径、环境变量等,推荐创建PM2的配置文件:

  1. 在项目根目录创建ecosystem.config.js:
module.exports = {
  apps: [
    {
      name: 'react-dev-server', // 进程名称
      script: 'npm', // 要执行的脚本
      args: 'start', // 传递给npm的参数
      cwd: '/home/your-user/react-project', // 替换成你的项目绝对路径
      env: {
        NODE_ENV: 'development' // 开发环境变量
      },
      log_date_format: 'YYYY-MM-DD HH:mm:ss', // 日志时间格式
      out_file: './logs/dev-out.log', // 标准输出日志路径
      error_file: './logs/dev-error.log' // 错误日志路径
    }
  ]
};
  1. 然后启动:
pm2 start ecosystem.config.js

3. 常用PM2管理命令

  • 查看所有进程状态:pm2 status
  • 查看React服务器的实时日志:pm2 logs react-dev-server --follow
  • 重启进程:pm2 restart react-dev-server
  • 停止进程:pm2 stop react-dev-server
  • 设置开机自启(可选):
    pm2 startup # 执行后按照提示运行生成的系统命令
    pm2 save # 保存当前进程状态,开机时自动恢复
    

可能的坑点排查

如果之前启动失败,大概率是这两个原因:

  • 没加--分隔PM2和npm的参数,导致PM2无法正确识别npm start命令
  • 没有在项目根目录执行命令,也没在配置文件里指定cwd,PM2找不到package.json

内容的提问来源于stack exchange,提问作者Astronought

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:33:23