如何在Linux下部署一个NodeJS应用,比如网站。
首先英语好的,可以直接去看官方英文版。。。。
https://nodejs.org/en/download/package-manager/
主要的步骤,以CentOS为例
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash - sudo yum -y install nodejs
运行结束,应该就OK了,可以用下面的命令确认一下
[root@li1723-168 DemoTSServer]# node -v v6.11.4
同时顺便确认下NPM的安装情况,应该也是OK的
[root@li1723-168 DemoTSServer]# npm -v 3.10.10
然后我们就可以通过NPM安装需要的依赖,比如Mongodb
npm install mongodb ...
随便拉个程序过来看下情况,
node XXX.JS
如果能跑就OK了,顺便附赠一个监视程序,用来保证NodeJS一直可靠运行
npm install -g forever forever start DemoServerTS002.js warn: --minUptime not set. Defaulting to: 1000ms warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms info: Forever processing file: DemoServerTS002.js
我是一个HelloWorld的Server,浏览器打开一看,OK了。。。
附送一个简易探针程序
import * as http from 'http'; import * as os from 'os'; class NodeServer001 { server; gigaByte = 1 / (Math.pow(1024, 2)); run() { this.server = http.createServer(this.requestHandler) this.server.listen(18080, (err) => { console.log(`server is listening on 18080!`) }) } requestHandler = (request, response) => { response.writeHead(200, {"Content-Type": "text/html; charset=utf-8"}); var strMsg : string = "运行环境" + os.platform() + ""; strMsg = strMsg + "<br>" + "已连续运行 : " + os.uptime() + "秒"; strMsg = strMsg + "<br>" + "总内存 : " + os.totalmem() * this.gigaByte + "MBs"; strMsg = strMsg + "<br>" + "可用内存 : " + os.freemem() * this.gigaByte + "MBs"; strMsg = strMsg + "<br>" + "内存占用 : " + 100 * (1 - os.freemem() / os.totalmem()) + "%"; strMsg = strMsg + "<br>" + "本机共有 : " + os.cpus().length + " 个处理器"; // console.log("Available Memory", os.freemem() * gigaByte, "MBs"); // console.log("Percent consumed", 100 * (1 - os.freemem() / os.totalmem()), "%"); // console.log("This machine has", os.cpus().length, "CPUs"); response.end(strMsg) } } let mNodeServer001 = new NodeServer001(); mNodeServer001.run();
跑起来,浏览器访问能看到
运行环境linux
已连续运行 : 50203秒
总内存 : 989.31640625MBs
可用内存 : 117.91015625MBs
内存占用 : 88.08165360393264%
本机共有 : 1 个处理器