Nuxt.js配置PM2实践

一、方法一:文件启动

1、Nuxt.js项目,文件根目录添加 ecosystem.config.js ,配置如下:

module.exports = {
    apps: [{
        name: 'anchor',
        script: './node_modules/nuxt/bin/nuxt.js',
        append_env_to_name: false,
        cwd: './',
        exec_mode: "cluster",
        out_file: "./logs/out-0.log",
        error_file: "./logs/err-0.log",
        merge_logs: true,
        log_data_format: 'YYYY-MM-DD HH:mm Z',
        autorestart: true,
        watch: [
            './nuxt',
            'nuxt.config.js',
            'package.json'
        ],
        max_memory_restart: '1G',
        node_args: '--harmony',
        env: {
            PORT: 3000,
            NODE_ENV: "production"
        }
    }],
};

2、package.json 添加pm2启动命令

"scripts": {
        "dev": "nuxt",
        "build": "nuxt build",
        "start": "nuxt start",
        "pm2": "pm2 start ./ecosystem.config.js --interpreter babel-node --env production",
        "generate": "nuxt generate",
        "post-update": "yarn upgrade --latest"
    },

代码部署之后执行: npm run pm2 即可

问题:文件启动方式会导致内存占用率很大,一个小小的官网,占用了700M内存

二、shell命令启动
1、Nuxt.js项目,文件根目录添加 ecosystem.config.js ,配置如下:

module.exports = {
    apps: [{
        name: 'egatee-web',
        script: 'nuxt',
        args: "start",
        append_env_to_name: false,
        cwd: './',
        exec_interpreter: "bash",
        exec_mode: "cluster",
        out_file: "./logs/out-0.log",
        error_file: "./logs/err-0.log",
        merge_logs: true,
        log_data_format: 'YYYY-MM-DD HH:mm Z',
        autorestart: true,
        watch: [
            './nuxt',
            'nuxt.config.js',
            'package.json'
        ],
        max_memory_restart: '1G',
        node_args: '--harmony',
        env: {
            PORT: 3000,
            NODE_ENV: "production"
        }
    }],
};

2、package.json 添加pm2启动命令

"scripts": {
        "dev": "nuxt",
        "build": "nuxt build",
        "start": "nuxt start",
        "pm2": "pm2 start ./ecosystem.config.js --interpreter babel-node --env production",
        "generate": "nuxt generate",
        "post-update": "yarn upgrade --latest"
    },

使用这种方法,内存占用只有30多M

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值