高峰之巅 发表于 2017-2-24 10:28:14

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

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

  已知以下情景:


[*]  我要为 「kenniu」这个项目做配置

[*]  它的入口文件在 「/path/to/entry.js」

[*]  运行的User和Group都是 MrKen

[*]  node安装在了 /usr/bin/node

[*]  监听端口是2589

  接下分别看这两种方案。

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


[*]  cd /etc/systemd/system/

[*]  sudo vikenniu.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 vikenniu,输入shell脚本(后面再细讲)

[*]  sudo chmod +x kenniu

[*]  sudo chkconfig --add kenniu

  完成以上操作即可。
  启动:sudo service start kenniu
  除了start以外,可以stop、restart等。
  亲测成功,也很爽!

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

  优点:


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

  缺点:


[*]  需要学些shell脚本

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

  此文是闲暇时,把之前公众号的文章搬过来的。
页: [1]
查看完整版本: 【服务器】CentOS下部署运行NodeJs Web App