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

Posted 啃先生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务器CentOS下部署运行NodeJs Web App相关的知识,希望对你有一定的参考价值。

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

已知以下情景:

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

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

  3. 运行的User和Group都是 MrKen

  4. node安装在了 /usr/bin/node

  5. 监听端口是2589

接下分别看这两种方案。

壹 | Fisrt

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

  • cd /etc/systemd/system/

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

    技术分享

  • 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等。

亲测成功,也很爽!

技术分享

 

方案二的脚本怎么写

到目前为止都很简单,就剩下最难的——脚本怎么写。

其大体的框架如以下伪代码,看注释。另外点击 可以获取我的完整配置,根据你的情况把上边的变量值改一下即可用。

技术分享

优点:

  • 自已写脚本处理,非常灵活,包括各个步骤要输出什么提示语都可以自己掌控

缺点:

  •  需要学些shell脚本

  • 不太通用,貌似CentOS、RedHat等才支持,不甚清楚

 

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

技术分享

以上是关于服务器CentOS下部署运行NodeJs Web App的主要内容,如果未能解决你的问题,请参考以下文章

nodejs项目部署到腾讯云CentOS详细步骤

如何在centos下部署Node环境

在Linux上部署Nodejs的web项目

linux Centos7 部署 nodejs服务

如何在centos下部署Node环境

centos 7下部署Nginx Web服务+Haproxy监控+Nfs共享