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 配置即可。

相关推荐
AutoMQ1 天前
AutoMQ 亮相首尔:KafkaKRU 分享日志流处理新思路
kafka·开源·云计算
九章云极AladdinEdu1 天前
AI集群全链路监控:从GPU微架构指标到业务Metric关联
人工智能·pytorch·深度学习·架构·开源·gpu算力
白鲸开源1 天前
一行代码引发 12G 内存 5 分钟爆仓!SeaTunnel Kafka 连接器"内存溢出"元凶抓到了
数据库·kafka·开源
ITZHIHONH1 天前
FastGPT源码解析 Agent 智能体应用创建流程和代码分析
ai·开源·ai编程
CoderJia程序员甲1 天前
GitHub 热榜项目 - 日榜(2025-09-09)
ai·开源·大模型·github·ai教程
InternLM1 天前
专为“超大模型而生”,新一代训练引擎 XTuner V1 开源!
人工智能·开源·xtuner·书生大模型·大模型训练框架·大模型预训练·大模型后训练
ai产品老杨1 天前
打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程的智慧工业开源了
人工智能·开源·音视频·能源
老马啸西风1 天前
v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试
性能优化·开源·nlp·github·敏感词
GitCode官方2 天前
直播预告 | 开源低代码框架 Erupt 全生态讲解
低代码·开源
Yaavi2 天前
一个基于markdown的高性能博客模板
前端·开源·源码