Linux下PM2怎么用
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍Linux下PM2怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!PM2 是一个带有负载均衡功能的 Node 应用进程管理器,主要特点有内建负载均衡(使用
千家信息网最后更新 2025年01月20日Linux下PM2怎么用
这篇文章主要介绍Linux下PM2怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
PM2 是一个带有负载均衡功能的 Node 应用进程管理器,主要特点有内建负载均衡(使用 Node cluster 集群模块)后台运行,0 秒停机重载,具有 Ubuntu 和 CentOS 的启动脚本。
安装
Linux Binaries下载地址:https://nodejs.org/dist
cd oneinstack/srcwget https://nodejs.org/dist/v4.2.4/node-v4.2.4-linux-x64.tar.gztar xzf node-v4.2.4-linux-x64.tar.gzcp node-v4.2.4-linux-x64/bin/node /usr/local/bin/cp -R node-v4.2.4-linux-x64/lib/node_modules /usr/local/lib/ln -s /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npmnpm install pm2@latest -g #安装最新版本pm2模块
PS: 如果你的主机无法连接公网,先找到能连公网的主机安装上面的方法安装pm2,然后拷贝到你要安装的主机,拷贝如下目录:
/usr/local/bin/node/usr/local/lib/node_modules
再创建相关软连接即可
PM2常用命令
假设你现在已经写好了一个app.js的文件,需要启动,你可以使用pm2进行管理
1. 启动
# pm2 start app.js# pm2 start app.js --name my-api #my-api为PM2进程名称# pm2 start app.js -i 0 #根据CPU核数启动进程个数# pm2 start app.js --watch #实时监控app.js的方式启动,当app.js文件有变动时,pm2会自动reload
2. 查看进程
# pm2 list# pm2 show 0 或者 # pm2 info 0 #查看进程详细信息,0为PM2进程id
3. 监控
# pm2 monit
4. 停止
# pm2 stop all #停止PM2列表中所有的进程# pm2 stop 0 #停止PM2列表中进程为0的进程
5. 重载
# pm2 reload all #重载PM2列表中所有的进程# pm2 reload 0 #重载PM2列表中进程为0的进程
6. 重启
# pm2 restart all #重启PM2列表中所有的进程# pm2 restart 0 #重启PM2列表中进程为0的进程
7. 删除PM2进程
# pm2 delete 0 #删除PM2列表中进程为0的进程# pm2 delete all #删除PM2列表中所有的进程
8. 日志操作
# pm2 logs [--raw] #Display all processes logs in streaming# pm2 flush #Empty all log file# pm2 reloadLogs #Reload all logs
9. 升级PM2
# npm install pm2@lastest -g #安装最新的PM2版本# pm2 updatePM2 #升级pm2
10. 更多命令参数请查看帮助
# pm2 --help
PM2目录结构
默认的目录是:当前用于的家目录下的.pm2目录(此目录可以自定义,请参考:五、自定义启动文件),详细信息如下:
$HOME/.pm2 #will contain all PM2 related files$HOME/.pm2/logs #will contain all applications logs$HOME/.pm2/pids #will contain all applications pids$HOME/.pm2/pm2.log #PM2 logs$HOME/.pm2/pm2.pid #PM2 pid$HOME/.pm2/rpc.sock #Socket file for remote commands$HOME/.pm2/pub.sock #Socket file for publishable events$HOME/.pm2/conf.js #PM2 Configuration
自定义启动文件
创建一个test.json的示例文件,格式如下:
{ "apps": { "name": "test", "cwd": "/data/wwwroot/nodejs", "script": "./test.sh", "exec_interpreter": "bash", "min_uptime": "60s", "max_restarts": 30, "exec_mode" : "cluster_mode", "error_file" : "./test-err.log", "out_file": "./test-out.log", "pid_file": "./test.pid" "watch": false }}
参数说明:
apps:json结构,apps是一个数组,每一个数组成员就是对应一个pm2中运行的应用name:应用程序的名称cwd:应用程序所在的目录script:应用程序的脚本路径exec_interpreter:应用程序的脚本类型,这里使用的shell,默认是nodejsmin_uptime:最小运行时间,这里设置的是60s即如果应用程序在60s内退出,pm2会认为程序异常退出,此时触发重启max_restarts设置数量max_restarts:设置应用程序异常退出重启的次数,默认15次(从0开始计数)exec_mode:应用程序启动模式,这里设置的是cluster_mode(集群),默认是forkerror_file:自定义应用程序的错误日志文件out_file:自定义应用程序日志文件pid_file:自定义应用程序的pid文件watch:是否启用监控模式,默认是false。如果设置成true,当应用程序变动时,pm2会自动重载。这里也可以设置你要监控的文件。
实例展示
已上面的test.json为例
# cat > /data/wwwroot/nodejs/test.sh 1.log sleep 5doneEOF
然后执行如下命令:
# chmod +x test.sh #添加执行权限 # pm2 start test.json #启动,如下图:
# pm2 list #查看pm2进程,如下图:
以上是"Linux下PM2怎么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
进程
应用
程序
应用程序
文件
目录
监控
主机
命令
日志
脚本
运行
均衡
信息
内容
参数
名称
拷贝
数组
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全攻击方法和防御策略
sql数据库共有多少条记录
云存储在服务器安全吗
数据库中视图的概念和优点
金蝶k3数据库可以安装吗
河南app软件开发定制费用
四川归云网络技术
腾讯云应用服务器是什么
学生宿舍管理数据库ER图
电力监控网络安全防护办法
db2数据库自动优化
我的世界服务器购买
数据库和系统怎么交互
焦作软件开发税务筹划如何做
缅甸网络安全
哔哩泰区服务器
网络安全为主题的新闻稿
avast网络安全版下载
集创北方软件开发
计算机网络技术七层模型
浪潮服务器导轨安装
家庭服务器主机选型
安卓怎么创建数据库
全球科技与互联网市值
工程网络技术规范
scada系统网络安全
学小学两会期间网络安全会议
南通市软件开发有没有国企
北航网络安全多少分
网络安全分析师就业