1.安装pm2:

npm install -g pm2

2.在启动文件夹内新建文件processes.json:

{
  "apps": [
    {
      "name": "schedulingBack",
      "cwd": "/root/zdy/project/schedulingBack",
      "script": "bin/www",
      "log_date_format": "YYYY-MM-DD HH:mm Z",
      "error_file": "/root/zdy/log/node-app.stderr.log",
      "out_file": "log/node-app.stdout.log",
      "pid_file": "pids/node-geo-api.pid",
      "instances": 6,
      "min_uptime": "200s",
      "max_restarts": 10,
      "max_memory_restart": "1024M",
      "cron_restart": "1 1 1 * *",
      "watch": false,
      "merge_logs": true,
      "exec_interpreter": "node",
      "exec_mode": "fork",
      "autorestart": false,
      "vizion": false
    }
  ]
}
 
  • apps:json结构,apps是一个数组,每一个数组成员就是对应一个pm2中运行的应用
  • name:应用程序名称
  • cwd:应用程序所在的目录
  • script:应用程序的脚本路径
  • log_date_format:
  • error_file:自定义应用程序的错误日志文件
  • out_file:自定义应用程序日志文件
  • pid_file:自定义应用程序的pid文件
  • instances:
  • min_uptime:最小运行时间,这里设置的是60s即如果应用程序在60s内退出,pm2会认为程序异常退出,此时触发重启max_restarts设置数量
  • max_restarts:设置应用程序异常退出重启的次数,默认15次(从0开始计数)
  • max_memory_restart:
  • cron_restart:定时启动,解决重启能解决的问题
  • watch:是否启用监控模式,默认是false。如果设置成true,当应用程序变动时,pm2会自动重载。这里也可以设置你要监控的文件。
  • merge_logs:应用使用情况超过多少时,重启服务。
  • exec_interpreter:应用程序的脚本类型,这里使用的shell,默认是nodejs
  • exec_mode:应用程序启动模式,这里设置的是cluster_mode(集群),默认是fork
  • autorestart:启用/禁用应用程序崩溃或退出时自动重启
  • vizion:启用/禁用vizion特性(版本控制)

参考:https://www.jianshu.com/p/d2a640b8661c

linux 上使用pm2启动nodejs服务的更多相关文章

  1. nginx+ssl+pm2 部署 nodejs 服务

    nginx+pm2 部署 nodejs 服务 最近在 centos 上部署 nodejs 服务,记下来步骤: 注意都是使用 root 用户. 下载 nvm: curl -o- https://raw. ...

  2. Linux上设置开机启动Java程序

    在Linux上设置开机启动Java程序,例如:test.jar 在Linux上启动Java程序的命令: nohup java -jar test.jar >/dev/>& & ...

  3. Linux上制作Window启动盘

    Linux上制作Window启动盘 注意: U盘在Linux中的标签(依具体情况而定:执行df查看) U盘 ----- /dev/sdb4 格式化U盘 建立U盘的启动分区 安装关键工具 ms-sys ...

  4. 【转】Linux学习之路--启动VNC服务

    我的Linux是Fedora 13,安装方法如下: 1.打开终端,执行 # yum install -y tigervnc tigervnc-server 2.编辑/etc/sysconfi/vncs ...

  5. Linux学习之路--启动VNC服务

    我的Linux是Fedora 13,安装方法如下: 1.打开终端,执行 # yum install -y tigervnc tigervnc-server 2.编辑/etc/sysconfi/vncs ...

  6. 使用pm2启动nodejs+express+mysql管理系统步骤

    背景: 由于个人兴趣,了解了一下nodejs+express+mysql项目.在项目搭建完成并开发完成并部署时,遇到一个尴尬的问题,就是后台的servive服务启动问题.日常开发时,打开2个cm窗口, ...

  7. windows pm2 启动nodejs失败:Error: EBADF: bad file descriptor, uv_pipe_open

    windows下打开命令窗口,安装pm2:npm install pm2 -g pm2成功安装,在项目目录下用pm2启动服务:pm2 start index.js,结果启动失败,错误如下: .pm2\ ...

  8. Linux服务器重启后启动Oracle服务

    目录 1. 启动Oracle服务 2. 启动Oracle监听服务 © 版权声明:本文为博主原创文章,转载请注明出处 1. 启动Oracle服务 重启Linux服务器后,Oracle服务还需要手动启动. ...

  9. linux上wps2019不能启动解决方法

    本人linux上的wps2016升级成wps2019后启动不了,双击图标没反应,在命令行输入wps,提示"/lib64/libc.so.6: version `GLIBC_2.18' not ...

  10. (转) Weblogic在Linux上节点服务器启动正常,计算机连接不上

    对于服务器AdminServer, 与计算机Machine-0相关联的节点管理器无法访问.               所有所选服务器当前都处于与此操作不兼容的状态, 或未与运行的节点管理器关联, 或 ...

随机推荐

  1. P27_wxss - 全局样式和局部样式

    全局样式 定义在 app.wxss 中的样式为全局样式,作用于每一个页面. 局部样式 在页面的 .wxss 文件中定义的样式为局部样式,只作用于当前页面. 注意: 当局部样式和全局样式冲突时,根据就近 ...

  2. .NET Core MongoDB的简单使用

    一.创建测试库.测试表.添加测试数据 使用之前文章提到的MongoDB Compass用法分别添加数据库[myDb]和集合(表)[userinfos]信息, 参考链接为:MongoDB Compass ...

  3. Terraform基础入门 (Infrastructure as Code)

    highlight: idea theme: awesome-green 前言 像写代码一样管理基础设施. Terraform 使用较为高级的配置文件语法来描述基础设施,这个特性让你对配置文件进行版本 ...

  4. 罗姆BU32107EFV缩写词

    ADC Analog-to-Digital Converter Att Attenuation 衰减 AMix Analog Mixing AVol Analog Volume BPF Band-Pa ...

  5. Spring Cloud Config 本地配置

    七:Spring Cloud Config 本地配置 本地文件系统 我们可以将微服务的相关配置文件存储到本地文件中,然后让微服务来读取本地文件. 创建本地文件 Config Server 1.创建模块 ...

  6. 挖矿僵尸网络蠕虫病毒kdevtmpfsi处理过程

    背景: pgsql连接时候报错org.postgresql.util.PSQLException: FATAL: sorry, too many clients already, 意思是client已 ...

  7. 【KAWAKO】DTLN-1Dconv的原理

    目录 前言 怎么理解DTLN的第二部分呢 对1D卷积的具体理解 1D卷积相较于STFT的优缺点 优点 缺点(不太确定) 参考文献 前言 DTLN是一种能够实时处理的语音降噪算法,其开源代码在这里,论文 ...

  8. vue-seamless-scroll滚动加点赞衔接处数据不同步问题

    VUE使用vue-seamless-scroll自动滚动加点赞,因为有两个overhidden导致点击不同同步dom,在代码中会出现两处vue-seamless-scroll上下悬接,悬接处点赞触发没 ...

  9. 配置 Vite 自动导入 ElementPlus 组件、函数、Icons、样式

    使用 Vite 的自动导入的前提是项目是 TS 项目,JS 项目使用 Vite 自动导入不生效.安装以下 5 个包到 devDependencies: cnpm i -D unplugin-icons ...

  10. 一文吃透 Go 内置 RPC 原理

    hello 大家好呀,我是小楼,这是系列文<Go底层原理剖析>的第三篇,依旧分析 Http 模块.我们今天来看 Go内置的 RPC.说起 RPC 大家想到的一般是框架,Go 作为编程语言竟 ...