在Centos上安装Node.js

介绍

Node.js是一个能够在服务器端运行JavaScript的开放源代码、跨平台avaScript 运行环境。Node.js由Node.js基金会持有和维护,并与Linux基金会有合作关系。Node.js采用Google开发的V8运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于数据密集的实时应用程序。 Node.js大部分基本模块都用JavaScript语言编写。在Node.js出现之前,JavaScript通常作为客户端程序设计语言使用,以JavaScript写出的程序常在用户的浏览器上运行。Node.js的出现使JavaScript也能用于服务器端编程。

所以,学会试用Node.js非常有用,本文概述了在Centos运行node.js + express中运行“Hello world”所需的步骤。

设置CVM

首先,我们需要一个CVM(最小的就足够了),如果仅仅是实验,我推荐您使用腾讯云免费开发者实验室进行使用,和一个SSH客户端(比如Windows上的Putty、Linux系统和Mac OSX的SSH,通常都是自带的)。当我们收到初始root密码时,我们可以用ssh应用到实例中。用SSH进入CVM并更改root密码。最好将软件存储库更新到最新版本:

yum -y update

这会将我们的CVM上安装的软件更新到最新版本。Yum可能需要几分钟,完成时,我们需要准备软件安装。我们将从最新的源代码构建Node.js,在编写本文时,最新版本是v0.10.4。为此,我们需要“开发工具”。它是一组用于从源代码编译软件的工具。

yum -y groupinstall "Development Tools"

此命令将使用编译node.js所需的应用程序提取“开发工具”组。

此外,我们将安装screen,一个可以让你的SSH后台工作的软件。它非常方便,特别是在开发编译的时候。

yum -y install screen

安装Node.js

现在我们已准备好从源安装Node.js。首先,我们将移动到/usr/src目录,通常用于存放软件源的位置。

cd /usr/src

现在,我们从Node.js网站http://nodejs.org/download上选择最新的压缩源存档。

wget http://nodejs.org/dist/v0.10.4/node-v0.10.4.tar.gz

如果有新的版本,我们建议您替换url中的版本。接下来,我们解压缩源文件并进入该目录。

tar zxf node-v0.10.4.tar.gz
cd node-v0.10.4

现在提取Node.js的源代码,我们在源目录中。我们现在可以通过执行configure脚本来准备我们的编译器命令:

./configure

这将读取我们系统的属性以准备编译器的内容,例如,它将读取您的系统架构(32/64位,CPU等信息)。有了它,我们现在准备好实际编译源代码了。只需输入:

make

这可能是最耗时的任务:在CVM上,完成需要大约6分34秒。当我们完成后,我们就可以使用安装啦:

make install

最新的命令会将已编译的二进制文件放在系统路径中,因此所有用户都可以使用它而无需进一步设置。默认情况下,节点二进制文件应安装在/usr/local/bin/node中。

安装Express.js

我们现在已经安装并完成了Node.js,我们可以开始开发,部署已经完成的应用程序,或者我们可以安装Express.js Web框架。首先,我们将使用节点模块管理器(npm)来快速安装插件和管理程序,这是一个非常有用的模块,可以保持我们的应用程序启动,监视文件更改(例如开发应用程序时)并在需要时重新启动CVM。

npm -g install express express-generator supervisor

npm -g install将从npm软件库安装expresssupervisor模块,并使其可供整个系统使用。此命令中的-g标识表示“全局”。

添加非特权用户

出于安全原因,您现在应该创建一个常规系统用户并在非特权帐户下运行节点。

为此,请先添加用户。您可以将“exampleuser”替换为您喜欢的任何名称。

useradd exampleuser

现在我们有一个新的系统用户了。为新用户添加一个合适的密码:

passwd exampleuser

注销,然后以新用户身份重新登录。

这会将我们的登录shell从root(系统用户)更改为exampleuser(非特权用户,可以以较小的损害破坏系统)。

创建快速应用程序

Express是一个强大的框架,要创建我们的第一个应用程序,我们所要做的就是输入:

express hello

该命令将创建一个“hello”目录,并为新应用程序进行一些基础设置。现在我们应该进入这个目录并安装express依赖项:

cd hello && npm install

npm install命令将从生成的package.json文件中读取所有模块依赖项,并从npm软件库安装它。我们应该启动一个新的屏幕会话,以便我们的节点可以运行:

screen

最后,我们可以启动我们的应用程序。

supervisor ./bin/www

现在,我们可以通过您的CVM IP访问我们的第一个express应用程序。例如http://123.456.78.90:3000

你学会了吗?更多Nodejs基础教程,请前往腾讯云+社区学习。


参考文献:《How To Install And Run A Node.js App On Centos 6.4 64bit 》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C/C++基础

google C++编程风格指南之头文件的包含顺序

(1)为了加强可读性和避免隐含依赖,应使用下面的顺序:C标准库、C++标准库、其它库的头文件、你自己工程的头文件。不过这里最先包含的是首选的头文件,即例如a.c...

12010
来自专栏java思维导图

从输入URL到页面展示到底发生了什么

地址:http://www.cnblogs.com/xianyulaodi/ 作者:咸鱼老弟

15230
来自专栏小白课代表

PanDownload 1.5.4 回归!享受飞一样的下载体验!!!

29620
来自专栏小詹同学

Python入门(一)——windows系统下python的安装

跟着北京某理工大学的某导师学习和研究人脸识别技术已经有一段时间了,在用C++后,在考虑用另一种语言python进行人脸识别的研究。那么要做的第一件事就是在电...

36950
来自专栏菩提树下的杨过

rpc框架之HA/负载均衡构架设计

thrift、avro、grpc之类的rpc框架默认都没有提供负载均衡的实现,生产环境中如果server只有一台,显然不靠谱,于是有了下面的设计,这其实是前一阵...

30180
来自专栏james大数据架构

0基础搭建Hadoop大数据处理-环境

   由于Hadoop需要运行在Linux环境中,而且是分布式的,因此个人学习只能装虚拟机,本文都以VMware Workstation为准,安装CentOS7...

21170
来自专栏不想当开发的产品不是好测试

jenkins 邮件添加附件

背景 当CI执行失败的时候,想获取到失败的用例,然后在本地调试,testNG是自带一个testng-failed.xml来记录的; 想法:尝试使用git 来p...

26350
来自专栏实用工具入门教程

如何部署 Node.js 开发环境

Node.js是一个用于通用编程的JavaScript平台,允许用户快速构建网络应用程序。通过在前端和后端利用JavaScript,Node.js使开发更加一致...

54500
来自专栏逸鹏说道

全站缓存时代

原则:动静分离,分级缓存,主动失效。 Web 开发中,接口会被分为以下几类: 纯静态页面。打死我都不会修改的页面。很长一段时间内,基本上不会修改。比如:关于我们...

42680
来自专栏抠抠空间

浅谈pipreqs组件(自动生成需要导入的模块信息)

30030

扫码关注云+社区

领取腾讯云代金券