Nuxt项目部署有两种方式,一种是静态部署,一种是动态部署
静态部署需要关闭项目ssr功能,动态部署则不需关闭,所以怎么部署项目就看你用不用ssr功能了 。

1.静态部署

先说静态部署,很简单,只需要nuxt.config.ts中把ssr属性改为false即可
在这里插入图片描述

运行

npm run generate

打包一个dist文件,把这个文件上传服务器使用nginx代理即可
在这里插入图片描述
代理
nginx.conf文件中找个位置,与其他server并其就行,写入一下内容即可

server {
        listen     3030;#你项目设置port
        server_name  localhost;
        location / {
                        root /mnt/oldagecrm/dist;# 你dist位置
                        index index.html index.htm;
        }
    }

重启nginx即可

2.动态部署

需要nuxt.config.ts中把ssr属性改为true即可
运行

npm run build

构建完成
在这里插入图片描述

.output文件就是打包的文件我们可以pm2来启动这个文件。为了能够区分打包的文件和原项目文件,我们可以把打包后的文件放入新建文件夹中,方便我们区分打包后的文件。

我们把红圈中的文件放入新文件中
在这里插入图片描述
然后创建ecosystem.config.js文件,写入一下内容这个文件是pm2要用的

module.exports = {
  apps: [
    {
       name: 'test',
       exec_mode: 'cluster',
       instances: '1', // 进程数  Or a number of instances
       port: '3030', //端口test
       script: './.output/server/index.mjs',//路径要写对。只要这个js文件和.output在同一目录下就没事
       error_file: './logs/app-err.log',
       out_file: './logs/app-out.log',
       log: './logs/app.log',
       args: 'start',
       env: {
         MODE: 'production'
       }
    }
  ]
}

启动
使用以下命令启动nuxt项目即可实现动态部署了,说通俗就是服务器运行nuxt项目,但不同的是pm2运行后台运行nuxt项目,比npm run dev前台运行好用

# 启动
pm2 start
# 停止
pm2 stop all
# 删除
pm2 delete all
# 重启
pm2 restart all



原文地址:https://blog.csdn.net/daitu_/article/details/134708987

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_50441.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注