npm在linux和window持久启动服务

在Linux系统上服务持久化可以使用一些工具来确保即使在终端关闭后服务也能继续运行。这里介绍 pm2 工具来管理和持久化启动服务。

使用 PM2 持久化启动服务

  1. 安装 PM2

    如果尚未安装 pm2,可以通过 npm 进行安装:

    npm install pm2 -g

  2. 设置 PM2 启动脚本

    在项目根目录下,创建一个 ecosystem.config.js 文件(如果已存在则跳过这一步),用来配置 PM2 启动参数。示例配置如下:

    module.exports = {
        apps: [
          {
            name: 'my-app', // 应用名称,自定义
            script: 'npm', // 启动命令
            args: 'run serve', // npm 启动参数
            instances: 1, // 启动实例个数
            autorestart: true, // 发生错误自动重启
            watch: false, // 是否监听文件变动然后重启
            max_memory_restart: '1G', // 超过内存多少自动重启
            env: {
              NODE_ENV: 'development' // 设置环境变量
            },
            env_production: {
              NODE_ENV: 'production' // 生产环境变量
            }
          }
        ]
      };
      

    在上述配置中,确保将 script 设置为 'npm'args 设置为 'run serve',这样 PM2 将通过 npm 启动你的服务。

  3. 启动服务

    使用以下命令启动你的应用程序:

    pm2 start ecosystem.config.js

    这将根据 ecosystem.config.js 中的配置启动服务,并且服务会在后台持续运行。

  4. 管理服务

    使用 PM2 可以方便地管理服务的启动、停止、重启等操作:

    • 停止服务:

      pm2 stop <app_name_or_id>

    • 重启服务:

      pm2 restart <app_name_or_id>

    • 查看服务状态:

      pm2 status

      或者

      pm2 list

      可以查看当前所有运行的服务。

    更多详细的命令可以通过 pm2 --help 查看。

通过使用 PM2,你可以方便地将服务持久化运行在 Linux 系统上,并且在服务器重启或终端断开连接后也能够保持运行。

当需要在window持久启动服务,则需其他方式,当运行报错按以下方式解决

1. :: Created by npm, please don't edit manually.
2. PM2 error: Error caught while calling pidusage
3. PM2 error: Error: Error: spawn wmic ENOENT

首先安装 pm2-windows-service

npm install pm2-windows-service -g

安装和启动服务

pm2-service-install

然后在根目录创建startScript.js:

const cmd=require('node-cmd');
cmd.run('npm run serve'); //运行项目启动命令

最后运行

pm2 start startScript.js

启动的地址即你项目正常启动时的地址
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值