CLI

pm2 Flags

Flag名称 描述
-V, –version 输出版本号
-v –version 获取版本
-s –silent 隐藏所有消息
-m –mini-list 显示没有格式的压缩列表
-f –force 强制执行
–disable-logs 不要记录日志
-n –name <name> 为脚本设置 <name>
-i –instances <number> 启动实例的数量[number](针对联网应用)(负载均衡)
–parallel <number> 并行操作数量(用于重启/重载)
-l –log [path] 指定整个日志文件(包括errorstdout
-o –output <path> 指定日志文件
-e –error <path> 指定错误日志文件
-p –pid <pid> 指定pid文件
-k –kill-timeout <delay> 在发送最终SIGKILL信号处理进程前延迟时间
–listen-timeout <delay> 应用重载时监听超时
–max-memory-restart <memory> 指定应用自重启的最大内存量(以字节为单位,使用syntax语法,如100M
–restart-delay <delay> 指定两次重启之间的延迟时间(单位毫秒)
–env <environment_name> 指定环境以获取特定的env变量(用于JSON声明)
–log-type <type> 指定日志输出类型(默认情况下为Stringjson可选)
-x –execute-command 使用fork系统执行程序
–max-restarts [count] 重启脚本最大次数
-u –user <username> 指定生成启动脚本时的用户
–uid <uid> 使用<uid>权限运行脚本
–gid <gid> 使用<gid>权限运行脚本
–cwd <path> 将目标脚本作为<username>运行
–hp <home path> 定义成启动脚本时的home路径
–wait-ip 覆盖systemd脚本等待完整的互联网连接以启动pm2
–service-name <name> 定义生成启动脚本时的服务名称
-c –cron <cron_pattern> 基于cron模式重启正在运行的进程
-w –write 在本地文件夹中写入配置
–interpreter <interpreter> 指定pm2用于执行应用的解释器(bash,python …)
–interpreter-args <arguments> 解释器参数(–node-args的别名)
–log-date-format <date format> 为日志添加自定义前缀时间戳
–no-daemon 如果pm2守护程序不存在,则在前台运行pm2守护程序
-a –update-env 在重启/重载时更新环境(-a <=> apply)
–source-map-support 强制源地图支持
–only <application-name> json声明一起,允许只运行一个应用
–disable-source-map-support 强制源地图支持
–wait-ready 请求pm2等待应用中的ready事件
–merge-logs 合并来自不同实例的日志,但保持错误并分离
–watch [paths] 监听应用文件夹的更改(default: "")
–ignore-watch <folders|files> 指定忽略监听的文件夹/文件,应该是一个特定的名称或正则表达式,例如 --ignore-watch="test node_modules "some scripts"
–node-args <node_args> 传递给解释器的参数,例如 --node-args="--debug=7001 --trace-deprecation"
–no-color 跳过颜色
–no-vizion 在无vizion功能的情况下启动一个应用(版本控制)
–no-autorestart 在无自重启下启动一个应用
–no-treekill kill主进程,不分离子进程
–no-pmx 在无pmx下启动一个应用
–no-automation 在无pmx下启动一个应用
–trace 使用km启用事务跟踪
–disable-trace 使用km禁用事务跟踪
–attach 在启动/重启/停止/重载后追加日志记录
–sort <field_name:sort> 根据字段名称进行排序
–v8 启用v8数据收集
–event-loop-inspector pmx中启用事件循环检查器转储
–deep-monitoring 启用所有监控工具(相当于--v8 --event-loop-inspector --trace
-h, –help 输出帮助信息

pm2命令

命令名称 描述
start [options] <file|json|stdin|app_name|pm_id…> 启动并守护应用
trigger <proc_name> <action_name> [params] 部署你的json
deploy <file|environment> 部署你的json
startOrRestart <json> 启动或重启JSON文档
startOrReload <json> 启动或优雅重载JSON文件
pid [app_name] 返回指定[app_name]pid或全部pid
startOrGracefulReload <json> 启动或正常重载JSON文件
stop [options] <id|name|all|json|stdin…> 停止一个进程(想再次启动,执行pm2 restart app
restart [options] <id|name|all|json|stdin…> 重启一个进程
scale <app_name> <number> 根据total_number参数在群集模式中放大/缩小进程
snapshot PM2内存快照
profile <command> 配置文件CPU
reload <name|all> 重载进程(请注意,它是作用于使用HTTP/HTTPS的应用)
gracefulReload <name|all> 正常重载一个进程。 发送“关机”消息关闭所有连接。
id <name> 按名称获取进程ID
delete <name|id|script|all|json|stdin…> 停止并从pm2进程列表中删除一个进程
sendSignal <signal> <pm2_id|name> 发送一个系统信号给目标进程
ping ping pm2守护进程,如果没有作用,它会启动它
updatePM2 用本地PM2更新内存PM2
update (别名)使用本地PM2更新内存中的PM2
install|module:install [options] [module|git:/] 安装或更新模块(或一组模块)并永久运行
module:update <module|git:/> 更新模块并永久运行
module:generate [app_name] 在当前文件夹中生成一个样本模块
uninstall|module:uninstall <module> 停止并卸载模块
publish|module:publish 发布你当前所在的模块
set [key] [value] 设置指定的配置<key> <value>
multiset <value> 多重集,例如key1 val1 key2 val2
get [key] 获取<key>的值
conf [key] [value] 获取/设置模块配置值
config <key> [value] 获取/设置模块配置值
unset <key> 清除指定的配置 <key>
report https://github.com/Unitech/pm2/issues提供一个完整的pm2报告
link|interact [options] [secret] [public] [name] 将操作链接到keymetrics.io,命令可以stop|info|delete|restart
unlink 将操作取消链接到keymetrics.io,命令可以stop|info|delete|restart
unmonitor [name] 不监控目标进程
monitor [name] 监控目标进程
open 在浏览器中打开仪表板
register keymetrics上创建一个帐户
login 登录keymetrics并链接当前的PM2
web 0.0.0.0:9615上启动一个health API
dump|save 转储所有进程以便之后可以恢复它们
send <pm_id> <line> 发送stdin到<pm_id>
attach <pm_id> [comman] 将标准输入/标准输出附加到由<pm_id>标识的应用
resurrect 恢复之前转储的所有进程
unstartup [platform] 禁用并清除自启动,[platform]=systemd,upstart,launchd,rcd
startup [platform] pm2启动设置脚本,[platform]=systemd,upstart,launchd,rcd
logrotate 复制默认的logrotate配置
ecosystem|init [mode] 生成一个进程配置文件。(mode = null or simple)
reset <name|id|all> 重置进程的计数器
describe <id> 描述进程ID的所有参数
desc <id> (别名) 描述进程ID的所有参数
info <id> (别名) 描述进程ID的所有参数
show <id> (别名) 描述进程ID的所有参数
list|ls 列出所有进程
l (别名) 列出所有进程
ps (别名) 列出所有进程
status (别名) 列出所有进程
jlist JSON格式列出所有进程
prettylist prettified JSON输出json
monit 开启暂时的监控
imonit 启动legacy termcap监测
dashboard|dash 启动带有监控和日志的仪表板
flush 刷新日志
reloadLogs 重载所有日志
logs [options] [id|name] 流化日志文件。 默认流化所有日志
kill 杀死守护进程
pull <name> [commit_id] 更新给定应用的仓库
forward <name> 更新仓库为给定应用的下一次提交
backward <name> 降级仓库为给定应用的上一次提交
gc 强制PM2触发垃圾收集
deepUpdate 执行PM2的深层更新
serve|expose [path] [port] 指定提供静态文件目录的http端口

问题

我们很乐于帮你解决你可能遇到的问题。搜索或查看FAQ。你也可以在PM2GitHub仓库提交问题或评论。