守护进程,英文名:“daemon”,是一个在后台运行并且不受任何终端控制的进程,不会随着会话结束而退出;就是常说的后台运行。

安装

常见的相应工具有Supervisor和nohup,而pm2对于Supervisor没有配置,不用输很长的命令、对于nohup管理进程方便。

NodeJS

pm2是一个高级NodeJS进程管理工具,使用pm2需要安装NodeJS,详细操作见下文:
Node.JS 环境搭建

修改镜像

修改成阿里云镜像

命令

npm config set registry https://registry.npmmirror.com

验证

npm config get registry
返回 https://registry.npmmirror.com 表示成功

pm2

安装完NodeJS就可以使用npm命令了,如下:

  1. npm i pm2 -g
  2. ln -s /usr/local/nodejs/bin/pm2 /usr/bin/

常用命令

命令 说明
pm2 update 更新版本
pm2 list 显示所有进程状态
pm2 startup 产生 init 脚本,保持进程后台运行
pm2 monit name 监视指定(所有)进程,查看进程的资源消耗情况等
pm2 log name 显示指定(所有)日志
pm2 stop name(all) 停止指定(所有)进程
pm2 restart name(all) 重启指定(所有)进程
pm2 reload name(all) 0 秒停机重载进程 (用于 NETWORKED 进程)
pm2 selete name(all) 删除指定(所有)进程

实例

背景:用 .NET Core 搭建了个小应用,可以部署的闲置服务器系统是 Linux,于是先部署了相应的运行环境
Linux 搭建 .NET 环境
直接将发布后的文件上传到服务器,进入到应用所在目录,执行一下语句即可

.NET Core 应用程序需要 runtimeconfig.json 文件

  1. pm2 start "dotnet test.dll" --name test
  2. pm2 monit test