Node.js是基于Chrome的JavaScript构建的跨平台JavaScript运行时环境,旨在在服务器端执行JavaScript代码。它通常用于构建后端应用程序,但也作为全栈和前端解决方案而流行。npm是Node.js的默认程序包管理器,也是世界上最大的软件注册表。
在本教程中,我们将探讨在Ubuntu 20.04上安装Node.js和npm的三种不同方式:
来自标准的Ubuntu存储库。这是在Ubuntu上安装Node.js和npm的最简单方法,对于大多数用例来说应该足够了。Ubuntu存储库中包含的版本是10.19.0。
从NodeSource存储库。如果要安装与Ubuntu存储库中提供的版本不同的Node.js版本,请使用此存储库。目前,NodeSource支持Node.js的v14.x,v13.x,v12.x,和v10.x。
使用nvm(节点版本管理器)。该工具允许您在同一台计算机上安装多个Node.js版本。如果您是Node.js开发人员,那么这是安装Node.js的首选方式。
选择适合您的环境的安装方法。如果不确定要安装哪个Node.js版本,请查阅要部署的应用程序的文档。
从Ubuntu存储库安装Node.js和npm
在撰写本文时,Ubuntu 20.04存储库中包含的Node.js版本10.19.0是以前的TLS版本。
安装非常简单。运行以下命令以更新软件包索引并安装Node.js和npm:
sudo apt update
sudo apt install nodejs npm
上面的命令将安装许多软件包,包括从npm编译和安装本机插件所需的工具。
完成后,通过运行以下命令验证安装:
nodejs --version
输出:
v10.19.0
从NodeSource安装Node.js和npm
NodeSource是一家致力于提供企业级Node支持的公司。它维护一个包含多个Node.js版本的APT存储库。如果您的应用程序需要特定版本的Node.js,请使用此存储库。
在撰写本文时,NodeSource存储库提供以下版本:
v14.x-最新的稳定版本。
v13.x
v12.x-最新的LTS版本。
v10.x-先前的LTS版本。
我们将安装Node.js版本14.x:
1.以具有sudo特权的用户身份运行以下命令,以下载并执行NodeSource安装脚本:
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
该脚本会将NodeSource签名密钥添加到您的系统,创建apt储存库文件,安装所有必需的软件包,并刷新apt缓存。
如果需要其他的Node.js版本,比如12.x,改变setup_14.x用setup_12.x。
2.启用NodeSource存储库后,安装Node.js和npm:
sudo apt install nodejs
nodejs软件包包含node和npm二进制文件。
3.通过打印它们的版本来验证Node.js和npm是否已成功安装:
node --version
输出:
v14.2.0
npm --version
输出:
6.14.4
为了能够从npm编译本机插件,您需要安装开发工具:
sudo apt install build-essential
使用NVM安装Node.js和npm
NVM(节点版本管理器)是一个bash脚本,可让您基于每个用户管理多个Node.js版本。使用NVM,您可以安装和卸载要使用或测试的任何Node.js版本。
访问nvm GitHub存储库页面并复制curlor wget命令以下载并安装nvm脚本:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
不要使用sudo它,因为它将nvm为root用户启用。
该脚本会将项目的存储库从Github复制到~/.nvm目录:
=> Close and reopen your terminal to start using nvm or run the following to use it now:
export NVM_DIR=“ H O M E / . n v m " [ − s " HOME/.nvm" [ -s " HOME/.nvm"[−s"NVM_DIR/nvm.sh” ] && . “KaTeX parse error: Expected 'EOF', got '#' at position 18: …M_DIR/nvm.sh" #̲ This loads nvm…NVM_DIR/bash_completion” ] && . “$NVM_DIR/bash_completion” # This loads nvm bash_completion
如上输出说,你要么关闭并重新打开终端或运行命令的路径添加到nvm脚本到当前的shell会话。您可以做对自己更轻松的事情。
将脚本放入您的中后PATH,nvm输入以下命令来验证该脚本是否已正确安装:
nvm --version
输出:
0.35.3
要获取可以通过安装的所有Node.js版本的列表nvm,请运行:
nvm list-remote
该命令将显示所有可用Node.js版本的庞大列表。
要安装Node.js的最新可用版本,请运行:
nvm install node
输出应如下所示:
…
Checksums matched!
Now using node v14.2.0 (npm v6.14.4)
Creating default alias: default -> node (-> v14.2.0)
安装完成后,通过打印Node.js版本进行验证:
node --version
输出:
v14.2.0
让我们再安装两个版本,即最新的LTS版本和version 10.9.0:
nvm install --lts
nvm install 10.9.0
您可以通过键入以下命令列出已安装的Node.js版本:
nvm ls
输出应如下所示:
v10.9.0
v12.16.3
v14.2.0
default -> node (-> v14.2.0)
node -> stable (-> v14.2.0) (default)
stable -> 14.2 (-> v14.2.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.16.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.20.1 (-> N/A)
lts/erbium -> v12.16.3
右边带有箭头的条目> v10.9.0是当前Shell会话中使用的Node.js版本,默认版本设置为v14.2.0。默认版本是打开新Shell时将激活的版本。
如果要更改当前活动的版本,请输入:
nvm use 12.16.3
输出:
Now using node v12.16.3 (npm v6.14.4)
要更改默认的Node.js版本,请运行以下命令:
nvm alias default 12.16.3