Nextjs项目服务器部署(简)

文章目录

      • 一、nextjs
      • 一、安装PM2
      • 二、使用PM2启动Next.js应用
      • 三、配置自动重启
      • 四、设置系统服务(持久化)
      • 五、常用命令
      • 六、验证部署
      • 注意事项

后面记得改
要将Next.js项目的 npm run start注册为系统服务并实现异常自动重启,推荐使用 PM2进程管理工具。以下是具体步骤:


一、nextjs

1、package安装

npm install

2、项目编译

npm run build

3、项目运行

一、安装PM2

npm install -g pm2  # 全局安装PM2

二、使用PM2启动Next.js应用

pm2 start npm --name "your-app-name" -- run start
  • 参数说明
    • --name "your-app-name":自定义服务名称(如nextjs-prod)。
    • -- run start:执行npm run start命令启动生产环境。

三、配置自动重启

PM2默认已启用崩溃自动重启。如需额外配置:

pm2 ecosystem  # 生成配置文件

在生成的ecosystem.config.js中调整:

module.exports = {
  apps: [{
    name: "your-app-name",
    script: "npm",
    args: "run start",
    autorestart: true,  // 启用自动重启
    watch: false,        // 关闭文件监听(生产环境建议关闭)
    max_memory_restart: "1G"  // 内存超限时重启
  }]
};

四、设置系统服务(持久化)

pm2 startup  # 生成启动脚本
pm2 save     # 保存当前进程列表
  • 执行后,PM2会注册为系统服务,服务器重启后应用自动恢复[1][2]。

五、常用命令

pm2 logs               # 查看实时日志
pm2 restart app-name   # 手动重启应用
pm2 stop app-name      # 停止应用
pm2 delete app-name    # 移除应用

六、验证部署

  1. 模拟崩溃测试:手动终止进程,观察PM2是否自动重启。
  2. 日志监控:通过pm2 logs检查错误信息。

注意事项

  1. 构建生产版本:启动前务必执行npm run build生成优化后的代码[4][5]。
  2. 环境变量:确保生产环境变量(如.env.production)已正确配置[8]。
  3. 资源监控:使用pm2 monit查看CPU/内存占用[1]。

你可能感兴趣的:(服务器,运维)