概述
写在前面,大家好!我是【跨考菌】,一枚跨界的程序猿,专注于后台技术的输出,目标成为
全栈攻城狮
!这博客是对我跨界过程的总结和思考。如果你也对Java
、后端技术
感兴趣,抑或是正在纠结于跨界,都可以关注我的动态,让我们一起学习,一起进步~
我的博客地址为:【跨考菌】的博客
目录
- 1 pm2命令入门
- 2 pm2部署node服务并设置开机自启动
通常我们启动一个node服务多是采用node或者nodemon命令启动服务,一旦命令行关闭,服务就挂掉了,为了将node服务作为一个后台服务运行,可以使用pm2命令来统一管理node服务并作为后台服务运行。
1 pm2命令入门
pm2 是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着。
安装:
npm install -g pm2
使用:
启动应用 pm2 start app.js
[root@centos7 server]# pm2 start app.js
[PM2] Starting /www/server/yapi/vendors/server/app.js in fork_mode (1 instance)
[PM2] Done.
┌──────────┬────┬─────────┬──────┬───────┬────────┬─────────┬────────┬─────┬──────────┬──────┬──────────┐
│ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├──────────┼────┼─────────┼──────┼───────┼────────┼─────────┼────────┼─────┼──────────┼──────┼──────────┤
│ app │ 0 │ 1.7.1 │ fork │ 21501 │ online │ 0 │ 0s │ 0% │ 2.9 MB │ root │ disabled │
└──────────┴────┴─────────┴──────┴───────┴────────┴─────────┴────────┴─────┴──────────┴──────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
[root@centos7 server]#
重启应用 pm2 restart app.js
显示进程列表 pm2 list
停止某应用 pm2 stop app_name|app_id
停止所有应用 pm2 stop all
保存现有列表数据pm2 save
:开机后会自动加载已保存的应用列表进行启动
[root@centos7 server]# pm2 save
[PM2] Saving current process list...
[PM2] Successfully saved in /root/.pm2/dump.pm2
[root@centos7 server]#
进行设置开机启动 pm2 startup
更多pm2命令可以参考:https://blog.csdn.net/sunscheung/article/details/79171608
2 pm2部署node服务并设置开机自启动
运行node.js服务的时候,如果服务器不小心或者因为其他原因重启了,服务不会跟着重启,需要手动运行服务,这样肯定是很不方便的,当然可以通过shell脚本进行启动,不过这样的不利于服务管理。可以通过pm2进行管理。
第一步:
运行 pm2 startup
,即在/etc/init.d/目录下生成pm2-root的启动脚本,且自动将pm2-root设为服务。
第二步:
运行 pm2 save
,会将当前pm2所运行的应用保存在/root/.pm2/dump.pm2下,当开机重启时,运行pm2-root服务脚本,并且到/root/.pm2/dump.pm2下读取应用并启动。
[root@centos7 server]# pm2 save
[PM2] Saving current process list...
[PM2] Successfully saved in /root/.pm2/dump.pm2
[root@centos7 server]#
centos7 可以通过systemctl查看服务状态
[root@centos7 server]# systemctl status pm2-root
● pm2-root.service - PM2 process manager
Loaded: loaded (/etc/systemd/system/pm2-root.service; enabled; vendor preset: disabled)
Active: inactive (dead)
Docs: https://pm2.keymetrics.io/
[root@centos7 server]#
这样的话,你正在运行的pm2服务开机之后就可以自启动了。
最后
以上就是勤劳大门为你收集整理的【Node小白入门】Node服务部署工具之pm21 pm2命令入门2 pm2部署node服务并设置开机自启动的全部内容,希望文章能够帮你解决【Node小白入门】Node服务部署工具之pm21 pm2命令入门2 pm2部署node服务并设置开机自启动所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复