Uninote
Uninote

实践案例

通过pm2来管理go的一个二进制应用,当然也可以管理其他程序进程,如php,js应用等等。

管理一个进程的实现步骤

注意: 以下是基于go二进制程序使用pm2托管的应用的场景,这里就不介绍pm2的安装方式了,安装方式可以自行百度。

  1. 创建应用的配置文件(基于yaml格式的应用配置文件,也可以是json) 创建一个名称为printtime.yaml配置文件
# yaml格式的配置文件需要特别注意缩进,空格和tab不混用
apps:
    # 工作目录
    - cwd : /Users/ojbk/program/demo/httpcode
      # 指定解释器名称
      #interpreter : /bin/bash
      # 程序路径
      script : ./printTime
      # 参数
      # args : --help
      # 管理进程的名称,方便使用pm2来快捷管理,但os上看到的进程名称是script的名称
      name : ptime
      # 启动进程的个数
      instances : 1
      # 执行模式
      exec_mode : fork
      log_date_format : YYYY-MM-DD:HH:mm:ss
      error_file : logs/ptime_error.log
      out_file : logs/ptime.log
      # 每次启动都是追加日志而不是新建日志文件
      merge_logs: true
      # 进程异常自动重启
      autorestart : true
      # 最大重启次数
      max_restarts : 3
  1. pm2创建并启动一个应用程序
    • 启动并创建进程运行环境: pm2 start printtime.yaml
  2. 任意路径执行pm2相关的命令来管理pm2创建的进程
    • 状态/启动/重启/重载:pm2 status/start/restart/reload ptime
    • 日志查看:pm2 logs ptime
    • 查看应用创建信息:pm2 show ptime
    • 删除/监控应用:pm2 delete/monit ptime

参考链接

pm2进程管理工具总结 官方文档--管理单个进程

jenkins打包前端

容器分配静态IP

点赞(0) 阅读(324) 举报
目录
标题