Nuxt 3 项目 PM2 部署文档

238 阅读2分钟

📌 简介

本部署文档将指导你如何使用 PM2 将 Nuxt 3 项目部署到服务器。PM2 是一个功能强大的 Node.js 进程管理工具,支持集群模式、自动重启、开机自启等功能。


🚀 步骤 1:安装 PM2

在你的 本地开发环境服务器 都需要全局安装 PM2。

npm install -g pm2

📁 步骤 2:创建 ecosystem.config.cjs 配置文件

在你的 Nuxt 3 项目根目录下新建文件 ecosystem.config.cjs

module.exports = {
  apps: [
    {
      name: "robot-website",                 // 应用名称
      port: "9999",                          // 应用监听端口
      exec_mode: "cluster",                  // 集群模式 (使用多核)
      instances: "max",                      // 根据 CPU 核心数自动分配实例数量
      script: "./.output/server/index.mjs",  // Nuxt 3 项目打包后的入口文件
      env: {
        NODE_ENV: "production"
      }
    },
  ],
};

📁 步骤 3:配置 nuxt.config.ts

编辑 nuxt.config.ts 文件,使其支持环境变量读取:

import { defineNuxtConfig } from 'nuxt'

export default defineNuxtConfig({
  runtimeConfig: {
    public: {
      baseURL: process.env.NUXT_PUBLIC_BASE_URL || 'http://localhost:9999'
    }
  }
})

📁 步骤 4:创建环境变量文件

在项目根目录下创建:

.env

NODE_ENV=development
NUXT_PUBLIC_BASE_URL=http://localhost:9999

.env.production

NODE_ENV=production
NUXT_PUBLIC_BASE_URL=https://your-production-url.com

📦 步骤 5:打包项目

在项目根目录下执行:

npm run build

这会在 .output/ 文件夹中生成你的项目。


🚀 步骤 6:启动项目 (使用 PM2)

pm2 start ecosystem.config.cjs

🔍 步骤 7:查看 PM2 运行状态

pm2 status

💾 步骤 8:保存进程配置

防止服务器重启后配置丢失。

pm2 save

🔁 步骤 9:设置开机自启

在服务器中执行:

pm2 startup

按提示运行生成的命令。


🔄 步骤 10:更新配置或重启应用

当修改了 ecosystem.config.cjs 文件或项目代码后,使用:

pm2 reload ecosystem.config.cjs

📖 步骤 11:查看日志 (调试用)

pm2 logs

或查看特定应用的日志:

pm2 logs robot-website

🎉 完成

你的 Nuxt 3 应用现在已经通过 PM2 部署成功,并且支持:

  • 集群模式多核处理。
  • 自动重启。
  • 系统重启后自动启动。