NUXTJS + pm2 部署开源电商PC商城

为了符合各种服务器场景,使用pm2 部署 PC 商城如下

注意:对比package.json代码修改配置即可,如果2024年5月之后下载的代码可以直接用命令启动

服务器安装node + pm2 如已安装跳过此章节

在 CentOS 上安装 Node.js 和 PM2 的步骤如下:

安装 Node.js 使用 YUM 安装 Node.js:

在 CentOS 中,你可以使用 NodeSource 的 Node.js 安装脚本来安装 Node.js。首先,使用以下命令下载安装脚本:

复制代码
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -

然后,安装 Node.js:

复制代码
sudo yum install -y nodejs

这将安装 Node.js 和 npm。

验证安装:安装完成后,运行以下命令验证 Node.js 和 npm 的安装:

复制代码
node -v
npm -v

如果安装成功,将显示 Node.js 和 npm 的版本信息。 安装 PM2 全局安装 PM2: 使用 npm 全局安装 PM2:

复制代码
bash
sudo npm install -g pm2

验证安装:安装完成后,运行以下命令验证 PM2 的安装:

复制代码
Copy code
pm2 -v

如果安装成功,将显示 PM2 的版本信息。

🚀 修改 package.json

如上图在 script 标签中添加

复制代码
"pm2": "pm2 start ./ecosystem.config.cjs --interpreter babel-node --env production",
"bundle": "rollup -c"

🔧 在根目录创建 ecosystem.config.cjs 内容如下

复制代码
// 配置pm2
module.exports = {
    apps: [
        {
            name: "JavaMerPcMall",
            script: "./.output/server/index.mjs",
            args: "start", // 传递给脚本的参数
            watch: true, // 开启监听文件变动重启
            ignore_watch: ["node_modules", "public", "logs"], // 不用监听的文件
            exec_mode: "fork",// 自家主机window cluster_mode 模式下启动失败
            instances: "1", // max表示最大的 应用启动实例个数,仅在 cluster 模式有效 默认为 fork
            autorestart: true, // 默认为 true, 发生异常的情况下自动重启
            max_memory_restart: "1G", //  // 最大内存限制数,超出自动重启
            error_file: './logs/app-err.log', // 错误日志文件
            // out_file: './logs/app-out.log', // 正常日志文件
            merge_logs: true, // 设置追加日志而不是新建日志
            log_date_format: "YYYY-MM-DD HH:mm:ss", // 指定日志文件的时间格式
            min_uptime: "60s", // 应用运行少于时间被认为是异常启动
            env: {
                // 环境参数,当前指定为开发环境
                NODE_ENV: "development",
                PORT: "8888",
            },
            env_production: {
                // 环境参数,当前指定为生产环境
                NODE_ENV: "production", //使用production模式 pm2 start ecosystem.config.js --env production
                PORT: "60001",
            },
            env_test: {
                // 环境参数,当前为测试环境
                NODE_ENV: "test",
            }
        }
    ]
};

🔥 根据如下步骤 执行打包 copy 到服务器对一个目录

复制代码
npm install
npm run build

将打包后的如下对应文件 复制到服务器

如下图项目启动成功

本地测试端口访问成功
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/2d757faf5e364e98bfbbf795a24323fe.png)

根据配置在用nginx 转发对应端口到域名即可,此处配置省略,普通的 location 配置即可。

相关推荐
冬奇Lab3 小时前
一天一个开源项目(第73篇):Multica - 把 AI 编程智能体变成真正的团队成员
人工智能·开源·资讯
提子拌饭1336 小时前
生命组学架构下的细胞分化与基因突变生存模拟器:基于鸿蒙Flutter的情景树渲染与状态溢出防御
flutter·华为·架构·开源·harmonyos
m0_694845576 小时前
CRUD (Nestjsx)部署教程:自动生成RESTful接口
服务器·人工智能·后端·开源·自动化·restful
a1117768 小时前
汽车展厅项目 开源项目 ThreeJS
前端·开源·html
亥时科技10 小时前
AI+ 无人机一体化平台:架构设计与竞品分析
人工智能·开源·无人机·低空经济·ai巡检
uzong12 小时前
107K Star:火爆的MarkItDown--一款用于将文件和办公文档转换为 Markdown 的 Python 工具
人工智能·后端·开源
智碳未来科技有限公司13 小时前
开源赋能双碳|智碳能源管理系统:全栈开源工业级 EMS,打破能源管控技术壁垒,助力千行百业零碳转型
开源·能源管理系统·能源管理·能碳管理系统·绿色工厂申报·能碳管理·绿色工厂认证
IT观测13 小时前
全国一体成型电感供应商推荐:深圳陆海高分子,覆盖AI服务器、汽车电子的国产方案
开源
悟空码字14 小时前
多租户CRM系统开源了,支持公海、线索、客户、订单管理等核心功能(附源码)
开源·crm