命令行参数
命令
命令 | 描述 |
---|---|
start [options] [name|namespace|file|ecosystem|id...] | 启动并守护应用程序 |
trigger <id|proc_name|namespace|all> <action_name> [params] | 触发进程操作 |
deploy <file|environment> | 部署JSON |
startOrRestart <json> | 启动或重新启动 JSON 文件 |
startOrReload <json> | 启动或优雅地重新加载 JSON 文件 |
pid [app_name] | 返回 [app_name] 或全部进程的进程 |
create | 返回 [app_name] 或全部进程的进程 |
startOrGracefulReload <json> | 启动或优雅地重新加载 JSON 文件 |
stop [options] <id|name|namespace|all|json|stdin...> | 停止进程 |
restart [options] <id|name|namespace|all|json|stdin...> | 重启进程 |
scale <app_name> <number> | 根据 total_number 参数,在集群模式下调整进程的规模(扩容/缩容)。 |
profile:mem [time] | 对 PM2 进行堆内存采样 |
profile:cpu [time] | 对 PM2 进行 CPU 分析 |
reload <id|name|namespace|all> | 重新加载进程(注意,适用于使用 HTTP/HTTPS 的应用程序) |
id <name> | 通过名称获取进程 ID |
inspect <name> | 检查进程 |
delete|del <name|id|namespace|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> | 停止并卸载一个模块 |
package [target] | 检查并打包 TAR 类型的模块 |
publish|module:publish [options] [folder] | 发布当前模块 |
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 [options] [secret] [public] [name] | 与 PM2 监控面板建立关联 |
unlink | 与 PM2 监控面板解除关联 |
monitor [name] | 监控目标进程 |
unmonitor [name] | 取消监控目标进程 |
open | 打开 PM2 监控面板 |
plus|register [options] [command] [option] | 启用 PM2 Plus |
login | 登录 PM2 Plus |
logout | 登出 PM2 Plus |
dump|save [options] | 转储所有进程,以便稍后恢复它们 |
cleardump | 创建空的转储文件 |
send <pm_id> <line> | 发送标准输入到 <pm_id> |
attach <pm_id> [comman] | 将标准输入/输出附加到由 <pm_id> 标识的应用程序 |
resurrect | 恢复先前转储的进程 |
unstartup [platform] | 禁用 PM2 启动钩子 |
startup [platform] | 启用 PM2 启动钩子 |
logrotate | 复制默认的 logrotate 配置 |
ecosystem|init [mode] | 生成进程配置文件(模式为 null 或 simple) |
reset <name|id|all> | 重置进程的计数器 |
describe <name|id> | 描述进程的所有参数 |
desc <name|id> | (别名)描述进程的所有参数 |
info <name|id> | (别名)描述进程的所有参数 |
show <name|id> | (别名)描述进程的所有参数 |
env <id> | 列出指定进程 ID 的所有环境变量 |
list|ls | 列出所有进程 |
l | (别名)列出所有进程 |
ps | (别名)列出所有进程 |
status | (别名)列出所有进程 |
jlist | 以 JSON 格式列出所有进程 |
sysmonit | 启动系统监控守护进程 |
slist|sysinfos [options] | 以 JSON 格式列出系统信息 |
prettylist | 以漂亮的格式打印 JSON |
monit | 启动 termcaps 监控 |
imonit | 启动传统的 termcaps 监控 |
dashboard|dash | 启动带有监控和日志功能的面板 |
flush [api] | 冲洗(删除)日志 |
reloadLogs | 重新加载所有日志 |
logs [options] [id|name|namespace] | 流式传输日志文件。默认情况下,流式传输所有日志 |
kill | 杀死守护进程 |
pull <name> [commit_id] | 更新应用程序的代码仓库 |
forward <name> | 更新应用程序的代码仓库到下一个提交 |
backward <name> | 将应用程序的代码仓库降级到前一个提交 |
deepUpdate | 对 PM2 进行深度更新 |
serve|expose [options] [path] [port] | 通过指定的端口以 HTTP 方式提供一个目录 |
autoinstall | |
examples | 显示 PM2 的用法示例 |
选项
选项 | 描述 |
---|---|
-V--version | 输出版本号 |
-v --version | 打印 PM2 版本 |
-s --silent | 隐藏所有消息 |
--ext <extensions> | 监视文件扩展名 |
-n --name <name> | 在进程列表中为进程设置一个名称 |
-m --mini-list | 显示一个未格式化的紧凑列表 |
--interpreter <interpreter> | 设置一个特定的解释器用于执行应用程序, 默认值:node |
--interpreter-args <arguments> | 设置传递给解释器的参数(--node-args 的别名) |
--node-args <node_args> | 传递给 Node 的空格分隔参数 |
-o --output <path> | 指定标准输出的日志文件 |
-e --error <path> | 指定标准错误输出的日志文件 |
-l --log [path] | 指定一个日志文件,用于收集标准输出和标准错误输出 |
--filter-env [envs] | 过滤掉包含所提供字符串的全局出局值(默认值:空) |
--log-type <type> | 指定日志输出样式(默认为原始格式,可选为 JSON) |
--log-date-format <date format> | 在日志中添加自定义前缀时间戳 |
--time | 启用时间记录 |
--disable-logs | 禁用所有日志存储 |
--env <environment_name> | 指定从 ecosystem file 中注入的环境变量 |
-a --update-env | 通过 restart/reload 强制更新环境变量 (-a <=> apply) |
-f --force | 强制执行操作 |
-i --instances <number> | 启动 [number]个实例(用于网络应用程序)(负载均衡) |
--parallel <number> | 并行操作的数量 (用于 restart/reload) |
--shutdown-with-message | 使用 process.send('shutdown') 代替 process.kill(pid, SIGINT) 关闭应用程序 |
-p --pid <pid> | 指定进程ID(PID)文件 |
-k --kill-timeout <delay> | 在发送最后的 SIGKILL 信号给进程之前的延迟 |
--listen-timeout <delay> | 应用程序重新加载的监听超时时间 |
--max-memory-restart <memory> | 如果超过一定内存量(以字节为单位),则重新启动应用程序 |
--restart-delay <delay> | 指定重启之间的延迟时间(以毫秒为单位) |
--exp-backoff-restart-delay <delay> | 指定重启之间的延迟时间(以毫秒为单位) |
-x --execute-command | 使用 fork 系统执行一个程序 |
--max-restarts [count] | 只重新启动脚本 COUNT 次 |
-u --user <username> | 在生成启动脚本时定义用户 |
--uid <uid> | 以 <uid> 的权限运行目标脚本 |
--gid <gid> | 以 <gid> 权限运行目标脚本 |
--namespace <ns> | 在指定的命名空间内启动应用程序 |
--cwd <path> | 从路径 <cwd> 运行目标脚本 |
--hp <home path> | 在生成启动脚本时定义主目录路径 |
--wait-ip | 覆盖 systemd 脚本以等待互联网连接后再启动 PM2 |
--service-name <name> | 在生成启动脚本时定义服务名称 |
-c --cron <cron_pattern> | 通过 cron 模式重新启动正在运行的进程 |
-c --cron-restart <cron_pattern> | (别名) 通过 cron 模式重新启动正在运行的进程 |
-w --write | 将配置写入本地文件夹 |
--no-daemon | 如果不存在,将 PM2 守护进程在前台运行 |
--source-map-support | 强制源映射支持 |
--only <application-name> | 通过 JSON 声明,允许仅对一个应用程序进行操作 |
--disable-source-map-support | 禁用强制源映射支持 |
--wait-ready | 请求 PM2 等待应用程序发送就绪事件 |
--merge-logs | 合并来自不同实例的日志,但保持错误和输出分开 |
--watch [paths] | |
--ignore-watch <folders\|files> | 要忽略的路径列表(名称或正则表达式) |
--watch-delay <delay> | 在更改文件后指定重新启动的延迟时间(--watch-delay 4 (以秒为单位)或 4000 毫秒) |
--no-color | 跳过颜色 |
--no-vizion | 启动一个不带版本控制功能(vizion)的应用程序 |
--no-autorestart | 启动一个不带自动重启功能的应用程序 |
--no-treekill | 只杀死主进程,不杀死分离的子进程 |
--no-pmx | 启动一个没有 PMX 的应用程序 |
--no-automation | 启动一个没有 PMX 的应用程序 |
--trace | 启用使用 KM 进行事务跟踪 |
--disable-trace | 禁用使用 KM 进行事务跟踪 |
--sort <field_name:sort> | 按字段名称对进程进行排序 |
--attach | 在 start/restart/stop/reload 后附加日志记录 |
--v8 | 启用 V8 数据收集 |
--event-loop-inspector | 在 PMX 中启用事件循环检测器转储 |
--deep-monitoring | 启用所有监控工具(相当于 --v8 --event-loop-inspector --trace ) |
-h, --help | 输出帮助信息 |