nuxt2.x部署到linux

nuxt2.x-app部署

🧱 一、首次部署(Nuxt 2)

假设你的项目路径是:

bash 复制代码
/var/www/nuxt-app
1️⃣ 拉取代码并安装依赖
bash 复制代码
cd /var/www
git clone https://github.com/yourname/your-nuxt-project.git nuxt-app
cd nuxt-app
npm install
2️⃣ 构建生产版本
bash 复制代码
npm run build
3️⃣ 创建 PM2 配置文件(推荐)

在项目根目录创建文件: /var/www/nuxt-app/ecosystem.config.js

内容如下 👇

js 复制代码
module.exports = {
  apps: [
    {
      name: 'nuxt-app',
      cwd: '/var/www/nuxt-app', // 项目路径
      script: 'npm',
      args: 'run start', // 启动命令
      env: {
        NODE_ENV: 'production',
        HOST: '0.0.0.0',
        PORT: 3000
      }
    }
  ]
}

🚀 二、用 PM2 启动项目

在项目目录执行:

bash 复制代码
pm2 start ecosystem.config.js

然后查看是否启动成功:

bash 复制代码
pm2 ls
pm2 logs nuxt-app

看到如下信息说明启动成功:

csharp 复制代码
0|nuxt-app | Listening on: http://0.0.0.0:3000

🔁 三、代码更新与重新部署

每次更新只需执行以下命令 👇

bash 复制代码
cd /var/www/nuxt-app
git pull
npm install      # 如果依赖更新
npm run build
pm2 restart nuxt-app

✅ 无需重新 pm2 start,只需 pm2 restart。


⚙️ 四、Nginx 反向代理(可选但推荐)

配置一个反向代理,让用户通过域名访问。

bash 复制代码
sudo nano /etc/nginx/sites-available/nuxt-app.conf

写入:

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_cache_bypass $http_upgrade;
    }
}

启用配置并重启 nginx:

bash 复制代码
sudo ln -s /etc/nginx/sites-available/nuxt-app.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

🔐 五、可选:配置 HTTPS(Let's Encrypt)

bash 复制代码
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your-domain.com

🔁 六、开机自启

让 PM2 和 Nuxt 自动启动:

bash 复制代码
pm2 startup
pm2 save

🧰 七、常用 PM2 命令总结

命令 说明
pm2 start ecosystem.config.js 启动应用(要切换到项目目录)
pm2 restart nuxt-app 重启
pm2 stop nuxt-app 停止
pm2 delete nuxt-app 删除
pm2 ls 查看运行列表
pm2 logs nuxt-app 查看日志
pm2 save 保存当前状态
pm2 startup 设置开机自启

✅ 七、快速部署流程(以后更新)

以后更新只需要:

bash 复制代码
cd /var/www/nuxt-app
git pull
npm install
npm run build
pm2 restart nuxt-app

相关推荐
风骏时光牛马11 分钟前
大模型综合能力多维评测:性能、逻辑与落地表现对比
前端
liuchangng18 分钟前
React 19 + Vite 6 实战:从教材 PDF 到 866 词间隔重复单词 App
前端·react.js·pdf·vite·开源项目
Dwzun33 分钟前
基于SpringBoot3+Vue3的油莎豆种植管理系统
java·前端·vue.js·spring boot·后端·python·计算机网络
小码哥_常6 小时前
一套自己部署的 IM,客户端是同一份 Flutter
前端·后端
蜗牛攻城狮9 小时前
微前端四大方案选型对比与最佳实践:qiankun、micro-app、wujie、Module Federation
前端·微前端·qiankun·前端架构·micro-app·wujie
她说可以呀10 小时前
Vue插槽
前端·javascript·vue.js
qq_4480111610 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
aixingpan10 小时前
aixingpan.cn API开发文档:前端查询夏令时和时区接口指南
前端·php
2601_9583529011 小时前
23.5×19mm 换掉一整条音频链?|A-68 集成了什么:ADC / DAC / 24.576MHz 时钟 / AEC / 波束降噪,主控仅需 6 根线
前端·音视频·ai降噪·回声消除·语音模块
志尊宝12 小时前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native