【转载】Centos系统采用NVM安装Node.js环境
node.js 是一个基于 chrome v8 引擎的 javascript 运行环境,用来方便地搭建快速的易于扩展的网络应用。node.js 使用了一个事件驱动、非阻塞式 i/o 的模型,使其轻量又高效,非常适合运行在分布式设备的数据密集型的实时应用。在阿里云的centos系统上,可以采用nvm安装方式部署node.js环境,并且支持多版本。nvm(node version manager)是node.js的版本管理软件,使用户可以轻松在node.js各个版本间进行切换。使用nvm的方式安装node.js非常适合node.js开发人员,同时也特别适合以下情形,要求快速更新node.js版本或者快速切换node.js版本的情况。
先说下在阿里云上通过nvm方式安装node.js项目所需的一些前提条件:你的账号下面需要拥有一台阿里云ecs服务器,运行的系统镜像是centos7.2,这台ecs服务器必须可以连接到公网,并且本地已经安装用于连接 linux 实例的工具。如果你不清楚阿里云账号下是否拥有ecs服务器,可通过ecs服务器控制台查看即可知道。如果没有的话,可以通过官网的ecs服务器采购页面购买一台即可,具体配置看你项目需要,不再详细阐述如何选择配置。
下面开始讲解如何在centos上采用nvm方式部署node.js项目的步骤:
(1)可以使用git的源代码管理工具将源码克隆到本地~/.nvm目录下,并检查最新版本。
yum install git
git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
(2)激活nvm,并且可以使用nvm list-remote列出node.js的所有版本。激活的命令如下:
echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
(3)使用nvm命令安装多版本node.js
nvm install v6.9.5
nvm install v7.4.0
(4)运行 nvm ls
命令可以查看到当前已经安装的node.js的版本号,从下面的直接结果可看出版本为版本为v6.9.5。
[root@izxxxxz .nvm]# nvm ls v6.9.5 -> v7.4.0 system stable -> 7.4 (-> v7.4.0) (default) unstable -> 6.9 (-> v6.9.5) (default)
(5)运行 nvm use v7.4.0
切换node.js版本至v7.4.0。
(6)从这一步开始部署项目,新建一个node.js项目文件叫做example.js。
cd ~
touch example.js
(7)使用vim编辑器打开项目文件example.js。
yum install vim vim example.js
(8)输入 i
,进入编辑模式,将以下项目文件内容粘贴到文件中。使用 esc
按钮,退出编辑模式,输入 :wq
,回车,保存文件内容并退出。
const http = require('http'); const hostname = '0.0.0.0'; const port = 3000; const server = http.createserver((req, res) => { res.statuscode = 200; res.setheader('content-type', 'text/plain'); res.end('hello world\n'); }); server.listen(port, hostname, () => { console.log(`server running at http://${hostname}:${port}/`); });
(9)通过node ~/example.js命令来运行项目,可以使用netstat -tpln查看端口是否存在。
(10)登录阿里云ecs管理控制台,并在安全组中 放行端口(如本示例中为tcp 3000端口)。
(11)如果你的服务器开启了防火墙功能,则需要在防火墙中设置允许入站的端口号。
(12)最后,在你的浏览器上输入以下格式访问,如果访问成功则代表node.js环境已经部署好,格式:http://你的服务器实例的公网ip地址:端口号。
文章的最后也提下,安装node.js环境还可以使用二进制文件的方式安装,详细的操作方式可参考:二进制文件部署node.js环境。
阿里云官方帮助文档请参考:部署node.js项目(centos)。
备注:此文章转载自博主个人技术站点:it技术小趣屋。
原文链接:查看原文。
下一篇: Docker 端口映射