欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【服务器】CentOS下部署运行NodeJs Web App

程序员文章站 2022-04-22 08:00:36
...

NodeJs Web App测试完成后,要怎么部署呢?介绍两个不错的方案

已知以下情景:

  • 我要为 「kenniu」这个项目做配置

  • 它的入口文件在 「/path/to/entry.js」

  • 运行的User和Group都是 MrKen

  • node安装在了 /usr/bin/node

  • 监听端口是2589

接下分别看这两种方案。

壹 | Fisrt

方案一:配置System,24小时保持在线

  • cd /etc/systemd/system/

  • sudo vi kenniu.service
    输入以下配置信息

【服务器】CentOS下部署运行NodeJs Web App

  • sudo chmod +x kenniu.service, 加上可执行权限

完成以上操作即可,非常简单。

启动:sudo systemctl start kenniu

除了start以外,可以stop、restart,以及status查看状态(出错时可查看)。此外,还可以 sudo systemctl enable kenniu 来使这项服务开机自动启动

亲测OK,很爽很好用!

优点:

  • 配置简单,学习成本低

  • 出错自动重启,24保持在线(如果频次太高也是会切断的,所以最靠谱的保障还是得靠监控)

  • 通用,不但CentOS支持,其他版本的Linux也支持

缺点:

  • 不太灵活

貳 | Second

方案二:编写Service init脚本

  • cd /etc/init.d/ 或 /etc/rc.d/init.d/

  • sudo vi kenniu,输入shell脚本(后面再细讲)

  • sudo chmod +x kenniu

  • sudo chkconfig --add kenniu

完成以上操作即可。

启动:sudo service start kenniu

除了start以外,可以stop、restart等。
亲测成功,也很爽!
【服务器】CentOS下部署运行NodeJs Web App
方案二的脚本怎么写*

到目前为止都很简单,就剩下最难的——脚本怎么写。
其大体的框架如以下伪代码,看注释。另外点击 可以获取我的完整配置,根据你的情况把上边的变量值改一下即可用。

【服务器】CentOS下部署运行NodeJs Web App
优点:自已写脚本处理,非常灵活,包括各个步骤要输出什么提示语都可以自己掌控
缺点:需要学些shell脚本;不太通用,貌似CentOS、RedHat等才支持,不甚清楚

此文是闲暇时,把之前公众号的文章搬过来的。

【服务器】CentOS下部署运行NodeJs Web App