【服务器】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 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的更多相关文章
- 使用Jexus 5.8.2在Centos下部署运行Asp.net core
这里安装的Jexus不是独立版本,所以需要先安装Mono 系统版本:Cenos7,Mono版本:5.0.1 Stable (5.0.1.1) Mono官方doc:http://www.mono-p ...
- Linux CentOS下部署Java Web项目
本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...
- java部署系列:CentOS下部署Java7/Java8
一.前言 1.本文主要内容 CentOS下部署OracleJDK CentOS下部署OpenJDK 2.适用范围与本篇环境 适用范围 1.CentOS 6+2.Java 7+ 本篇环境 1.CentO ...
- 阿里云服务器centos下安装配置svn服务器
阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion 从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...
- CentOS 下部署Nginx+Gunicorn+Supervisor部署Flask项目
原本之前有一部分东西是在Windows Server,但是由于Gunicorn不支持Windows部署起来颇为麻烦.最近转战CentOS,折腾一段时间,终于简单部署成功.CentOS新手,作为一个总结 ...
- Centos下部署Flask
尝试在Centos6.5下部署Flask应用并成功,记录一下步骤,参数为什么这样配置还需要再研究uwsgi和Nginx才能回答. Python版本升级2.7 测试机器centos6.5默认自带的pyt ...
- [傻瓜式一步到位] 阿里云服务器Centos上部署一个Flask项目
网络上关于flask部署Centos的教程有挺多,不过也很杂乱. 在我第一次将flask上传到centos服务器中遇到了不少问题,也费了挺大的劲. 在参考了一些教程,并综合了几个教程之后才将flask ...
- 在Centos下对高并发web框架Tornado的性能进行测试
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_89 在之前的一篇文章中,我们在1g1核的惨淡硬件环境下,对 uwsgi + django 和 gunicorn+ django 的 ...
- 玩nginx部署不同的web app
需求:一台服务器上部署多个应用 ,比如www.host.com/app 映射到 www.host.com:8081 实现方法:1. nginx 使用把路径访问映射到端口上.但是遇到一个问题是web a ...
随机推荐
- HTML Inspector – 帮助你编写高质量的 HTML 代码
HTML Inspector 是一款代码质量检测工具,帮助你编写更优秀的 HTML 代码.HTML Inspector 使用 JavaScript 编写,运行在浏览器中,是最好的 HTML 代码检测工 ...
- 常用的Webservice接口
常用的Webservice接口 . 查询手机:http://www.yodao.com/smartresult-xml/search.s?type=mobile&q=手机号码 . 查询IP:h ...
- html/css基础篇——GET和POST的区别
本文前面部分转自木-叶的博文,后面有本人自己的一些总结和体会. 如果有人问你,GET和POST,有什么区别?你会如何回答? 我的经历 前几天有人问我这个问题.我说GET是用于获取数据的,POST,一般 ...
- SQL Server代理(2/12):作业步骤和子系统
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. SQL Server代理作业有一系列的一个 ...
- Hyperledger智能合约Hello World示例程序
简介 Hyperledger是Linux 基金会主导的一个开源的区块链(BlockChain)项目. 本文介绍了一个简单的Hyperledger智能合约的开发过程. 开发环境 本文使用Docker作为 ...
- 计算机中数据实体和数据表示形式(以C#为例)
摘自网络的一段话: “在程序代码中,可以用多种方式表示数据,十进制.十六进制.八进制都是常用的表示方式,但计算机内部永远就只使用二进制,与你写程序时用什么无关.你说要定义数组int a[10],其中涉 ...
- C语言学习013:通过make编译C源代码
编译多个C源代码文件 当程序文件越来越多,修改了其中的一部分代码文件,我们并不需要全部重新编译,只需要编译其中一部分就可以,下面我们创建了一个launch程序,除了主程序,我们创建了3个功能代码文件r ...
- Mailbox unavailable. The server response was: 5.1.1 User unknown
昨晚至今早,在新的项目中,实现一个小功能,就是当有访问者浏览网页在留言簿留言时,系统把留言内容发送至某一个邮箱或是抄送指定的邮箱中. 使用以前能正常发送邮件的代码,但在新项目中,测试时,就是出现标题的 ...
- 【SQL】分配函数一枚[AllotToTable]
适用环境:MSSQL 2005+.其中05需修改部分语句的写法才行,如: --变量的声明和赋值需分开写 --需改为如下 --05不支持+=这样的复合运算符 --需改为如下 功能: 将一个数字(整数或有 ...
- Web API:将FlexChart导出为图片
如果想要将FlexChart在应用之外使用,比如使用在报表中,Web API帮助你将FlexChart导出成任何你需要的图片格式. 下面是实现的步骤: 1:创建FlexChart 2:调用Servic ...