一、nodejs简介

  Node.js是一个基于 Chrome V8 引擎 的 JavaScript 运行时。作为一个异步事件驱动的 JavaScript 运行时,Node.js 被设计用来构建可扩展的网络应用。这与当今比较常见的采用操作系统线程的并发模型形成了鲜明对比。基于线程的网络效率相对较低且更难以使用。此外,由于没有锁,Node.js 的用户不用担心进程死锁的问题。Node.js 中几乎没有函数直接执行 I/O 操作,其进程从不会被阻塞,因此用 Node.js 来开发可扩展系统是非常合理的。
  此博文介绍了nodejs的源码安装和二进制包安装方式,源码安装耗时较长,需要升级到新的gcc版本,建议使用二进制包安装方式,且方便升级,操作简单快捷。

二、源码安装步骤

1、下载软件包

  官网下载https://nodejs.org/dist/指定版本的软件包,截止2021年5月13日最新版本为16.1.0,本示例以v10.15.3安装为例。

[root@centos7 local]# wget https://nodejs.org/dist/v10.15.3/node-v10.15.3.tar.gz

2、解压软件包

[root@centos7 local]# tar -zxvf node-v10.15.3.tar.gz

node-v10.15.3/benchmark/assert/deepequal-typedarrays.js
node-v10.15.3/benchmark/assert/ok.js
node-v10.15.3/benchmark/assert/throws.js

3、编译安装

  前提条件是已安装gcc

[root@centos7 local]# cd node-v10.15.3
[root@centos7 local]# ./configure --prefix=/usr/local/node/10.15.3

[root@centos7 local]# make

[root@centos7 local]# make install

installing /usr/local/node/10.15.3/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h
installing /usr/local/node/10.15.3/include/node/zconf.h
installing /usr/local/node/10.15.3/include/node/zlib.h

  编译安装要求gcc版本较高,centos yum安装的gcc版本为4.8.5,需要升级gcc版本方可完成nodejs的源码安装,gcc升级方式参考博文Linux之gcc源码安装步骤

4、配置用户环境变量

[root@centos7 10.15.3]# vim /etc/profile
加入如下内容在最后
#set for nodejs
export NODE_HOME=/usr/local/node/10.15.3
export PATH=$NODE_HOME/bin:$PATH

5、使环境变量生效

[root@centos7 10.15.3]# source /etc/profile

6、检查验证node版本

[root@centos7 10.15.3]# node -v
v10.15.3

三、二进制包安装步骤

1、下载二进制软件包

  14.17.0是官方推荐安装的长期支持版本

[bdsc@centos7 ~]$ wget https://nodejs.org/dist/v14.17.0/node-v14.17.0-linux-x64.tar.gz

2、解压安装包

[bdsc@centos7 ~]$ tar -zxvf node-v14.17.0-linux-x64.tar.gz

3、创建软连接

[bdsc@centos7 ~]$ ln -s node-v14.17.0-linux-x64 node

4、验证版本

[bdsc@centos7 ~]$ cd node
[bdsc@centos7 node]$ ./bin/node -v
v14.17.0

5、添加到全局命令

  如果需要将node、npm命令添加到系统命令中,此操作需要root权限。

[root@centos7 ~]# ln -s /home/bdsc/node/bin/npm /usr/local/bin/
[root@centos7 ~]# ln -s /home/bdsc/node/bin/node /usr/local/bin/
[root@centos7 ~]# node -v
v14.17.0
[root@centos7 ~]# npm -v
6.14.13

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐