1.pm2简介
Pm2(过程管理器)是一个过程管理工具,它维护一个过程列表。它可以用来管理您的节点进程,负责所有正在运行的进程,并检查节点进程的状态。它还支持性能监控和负载平衡等功能。
1.1.pm2管理的节点程序的优势
监控文件更改,并自动重新启动程序以支持性能监控。当服务器重新启动时,负载平衡器崩溃并自动重新启动自动部署项目。2.pm2安装和使用
2.1.全局安装
Npm安装pm2 -g 2.2,常用命令
启动节点程序
PM2 start start . js
启动进程并指定应用程序的程序名
PM2 startapp . js-name application 1集群模式启动
//-i表示number-instance的实例数。//max表示PM2将自动检测可用CPU的数量。你可以自己指定号码。PM2开始开始。麦克斯
添加过程监控
//当文件更改时,它将重新启动程序PM2 startapp . js-name start-watch
列出所有进程
Pm2 listpm2 ls //速记从进程列表中删除进程
//pm 2 delete[app name]| idpm 2 delete app//指定进程名删除pm2删除0 //指定进程id删除删除进程列表中的所有进程
Pm2全部删除查看某个流程的具体情况
pm2描述应用
检查流程的资源消耗
PM2 monit
重新启动进程
Pm2重新启动app //使用指定名称重新启动进程pm2全部重新启动//重新启动所有进程以查看进程日志
Pm2日志app //查看具有此名称的进程的日志pm2日志全部//查看pm2从通电开始的所有进程的日志设置
打开启动设置,这里是centos系统,其他系统替换最后一个选项(可选:Ubuntu、CentOS、红帽、gentoo、systemd、Darwin、Amazon)
然后,Pm2启动centos根据提示输入的命令进入
最后保存设置
Pm2 save3。通过pm2配置文件自动部署项目
确保pm2安装在服务器上,如果没有安装,请先安装它
Npm install pm2 -g3.1在项目的根目录中创建新的deploy.yaml文件
# deploy . yamlapp s :-script :/start.js #条目文件名: 'app' #程序名env: #环境变量common _ variable : treenv _ product : node _ en v 3360 production deploy 3360 #部署脚本production: #生产环境用户user3360lentoo #服务器主机的用户名: 192.168.2.166 #服务器端口的ip地址: 22 # ssh端口ref: 被拉至服务器的某个目录部署前: gitfetch-all #执行部署后:npm安装PM2 reload deploy . YAML-env production #部署前,执行env : node _ env : production 3.2部署后,配置git的ssh无密认证
在服务器中生成rsa公钥和私钥目前是在centos7下进行的
前提服务器应该安装git,如果没有安装就先安装git,如果安装了就跳过它
Yum -y安装git生成密钥
ssh-key gen-t RSA-c[email protected]在~/中有两个文件id_rsa和id_rsa.pub。ssh目录,id_rsa.pub文件在其中存储公钥。
登录GitHub,点击右上角头像,选择设置,点击添加SSH密钥,将id_rsa.pub的内容复制到里面。
3.3用pm2部署项目
在每次部署之前,将本地代码提交到远程git存储库
首次部署
部署pm2deploydeploy后。yaml productionsetup完成后,您可以登录到服务器,检查项目是否是从git的配置目录下提取的。
再次重新部署
PM2 deploy deploy . YAML production update 3.4此部署过程也适用于前端项目
例如vue-cli)自动部署到服务器,npm run build命令自动执行,生成的dist目录被分配给nginx的静态文件目录。
4.可能遇到的凹坑
当vscode和powershell的命令行程序在window系统下执行部署命令时,会发生部署失败
pm2 deploy deploy.yaml生产设置
解决方案:使用git命令行执行
以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。