Node.js 是一个跨平台的 JavaScript 运行环境,它构建在为了在服务器端运行 JavaScript 代码而设计的 Chrome JavaScript 上。使用 Node.js,你可以构建扩展的网络应用。
npm,是 Node Package Manager 的简称,它是 Node.js 为了方便开发者使用和重用代码而开发的默认包管理器。它也是世界上用来发布开源 Node.js 包的最大软件仓库。
在这篇文章中,我们将会带你一起看看在 CentOS 8 上安装 Node.js 和 npm 的两种不同方式。根据你的环境,选择最适合你的方式。
Node.js 和 npm 可以通过标准的 CentOS 源仓库进行安装。在写这篇文章的时候,在仓库中的 Node.js 版本是 v10.x。 通过运行以下命令来列出nodejs
包:
yum module list nodejs
输出显示 nodejs 模块只有一个版本:
CentOS-8 - AppStream
Name Stream Profiles Summary
nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime
nodejs 包提供了不同的剖面,默认的剖面,被使用[d]
进行标记将会安装通用的运行包。
想要在你的 CentOS 系统上安装默认的 Node.js 包,输入:
sudo yum module install nodejs
上面的命令同样也会安装 NPM。
如果你是一个开发者,安装 development 剖面,它会同时安装一些额外的库,以便构建动态加载的模块。
sudo yum module install nodejs/development
一旦安装完成,输入下面的命令验证安装:
node --version
这个命令显示 Node.js 的版本:
v10.16.3
这是在 CentOS 8 上安装 Node.js 和 npm 最方便的方式,并且应该能满足大部分用户场景。
对于来自 npm 仓库的本地插件进行编译和安装,开发工具是必须要安装的。通过运行下面的命令进行安装:
sudo dnf groupinstall 'Development Tools'
如果因为某些原因,你需要卸载 Node.js 和 npm 包,使用下面的命令:
sudo yum module remove nodejs
NVM (Node Version Manager) 是一个 bash 脚本,它允许你管理多个 Node.js 版本。通过 NVM,你可以安装或者卸载任何你想要使用或者测试的 Node.js 版本。
想要在你的 CentOS 系统上安装 NVM,运行下面的命令。不要使用sudo
,因为这会让 root 用户启用这个脚本。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash
这个安装脚本会克隆Github 上的 NVM 仓库到~/.nvm
目录并且添加 nvm 路径到 Bash 或者 ZSH profile 文件。
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
开始使用 nvm 脚本,打开一个新的 shell 会话。
现在nvm
脚本在你的 CentOS 系统上被启用,你可以运行下面的命令安装最新稳定的 Node.js 版本:
nvm install node
...
Computing checksum with sha256sum
Checksums matched!
Now using node v13.0.1 (npm v6.12.0)
Creating default alias: default -> node (-> v13.0.1)
让我们安装两个或者更多版本,最新 LTS 版本和版本 10.16.0:
nvm install --lts
nvm install 10.16.0
一旦安装完成,你可以列出所有已经安装的 Node.js 版本:
nvm ls
-> v10.16.0
v12.13.0
v13.0.1
default -> node (-> v13.0.1)
node -> stable (-> v13.0.1) (default)
stable -> 13.0 (-> v13.0.1) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.13.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.2 (-> N/A)
lts/dubnium -> v10.17.0 (-> N/A)
lts/erbium -> v12.13.0
带箭头的那一行,右边((-> v10.16.0)
),是当前 shell 会话中使用的 Node.js 版本。当你打开新的 shell 会话,默认的 Node.js 版本是v13.0.1
。
如果你要改变当前可用的版本号,比如:v12.13.0
,你可以运行:
nvm use v12.13.0
想要改变 Node.js 的默认版本,比如改到v12.13.0
,使用:
nvm alias default v12.13.0
我们为你演示了在 CentOS 8 上的两种安装 Node.js 和 npm 的方式。根据你的要求和喜好,选择你的方式。
现在你已经在 CentOS 8 上安装了 Node.js,可以部署你的应用了。