Ubuntu 20.04安装Node.js:从入门到精通的详细指南
简介
Node.js是一种用于服务器端编程的JavaScript运行时。它允许开发人员使用JavaScript创建可扩展的后端功能,许多人对它已经在基于浏览器的Web开发中很熟悉。
在本指南中,我们将向您展示在Ubuntu 20.04服务器上安装Node.js的三种不同方法:
- 使用apt从Ubuntu的默认软件仓库安装nodejs软件包
- 使用apt通过备用PPA软件仓库安装特定版本的nodejs软件包
- 安装nvm(Node版本管理器),并使用它来安装和管理多个版本的Node.js
对于许多用户来说,使用默认仓库的apt就足够了。如果您需要特定的更新版本或旧版本Node.js,您应该使用PPA仓库。如果您正在积极开发Node.js应用程序并需要频繁切换Node.js版本,请选择nvm方法。
注意
本文将指导您在Ubuntu服务器上安装Node.js。如果您想要一种一键部署Node.js应用到实时服务器的方式,请查看Silicon Cloud应用平台。
先决条件
要按照本指南进行操作,您需要先设置一个Ubuntu 20.04服务器。在开始之前,您应该在系统上设置一个具有sudo权限的非root用户账户。您可以通过遵循Ubuntu 20.04初始服务器设置教程来学习如何完成此设置。
选项1 — 从默认软件库使用Apt安装Node.js
Ubuntu 20.04的默认软件库中包含Node.js的一个版本,可用于在多个系统上提供一致的使用体验。目前库中的版本为10.19,虽不是最新版本,但是应该很稳定,并足以用于快速尝试该语言。
警告
要获取此版本,您可以使用apt软件包管理器。首先刷新您的本地软件包索引。
- sudo apt update
然后安装 Node.js。
- sudo apt install nodejs
通过查询node的版本号来确认安装是否成功。
- node -v
v10.19.0
如果仓库中的包能满足您的需求,这是您设置Node.js所需做的一切。在大多数情况下,您还需要安装npm,即Node.js的软件包管理器。您可以通过apt安装npm软件包来实现这一点。
- sudo apt install npm
这允许您安装模块和包以供在Node.js中使用。
目前为止,您已经成功地使用apt和默认的Ubuntu软件仓库安装了Node.js和npm。下一部分将展示如何使用其他软件仓库安装不同版本的Node.js。
选项2 — 使用NodeSource PPA通过Apt安装Node.js
若要安装不同版本的 Node.js,您可以使用 NodeSource 维护的个人软件包存档(PPA)。这些 PPA 比官方的 Ubuntu 软件仓库提供了更多版本的 Node.js。截至撰写本文时,可用的版本为 Node.js v16 和 v18。
首先,安装PPA以获取其软件包。从您的主目录中,使用curl获取您首选版本的安装脚本,确保将16.x
替换为您首选的版本字符串(如果不同)。
- cd ~
- curl -sL https://deb.nodesource.com/setup_16.x -o /tmp/nodesource_setup.sh
请查阅 NodeSource 文档以获取更多关于可用版本的信息。
使用Nano或您偏好的文本编辑器检查已下载脚本的内容。
- nano /tmp/nodesource_setup.sh
当您对脚本的安全性满意后,退出编辑器。然后使用sudo运行脚本。
- sudo bash /tmp/nodesource_setup.sh
您的配置文件将被添加PPA,并自动更新本地软件包缓存。现在您可以像之前的部分一样安装Node.js软件包。
- sudo apt install nodejs
通过使用 node -v
版本标志来运行,验证您已安装新版本。
- node -v
v16.19.0
NodeSource的Node.js软件包包含了Node二进制文件和npm,因此您无需单独安装npm。
至此,您已成功使用apt和NodeSource PPA安装了Node.js和npm。下一部分将展示如何使用Node版本管理器(NVM)安装和管理多个Node.js版本。
选项 3 — 使用Node版本管理器(NVM)安装Node
另一种特别灵活的Node.js安装方法是使用Node版本管理器(NVM)。该软件允许您同时安装和管理多个不同独立的Node.js版本及其相关的Node软件包。
要在您的Ubuntu 20.04机器上安装NVM,请访问该项目的GitHub页面。从主页显示的README文件中复制curl命令。这将获取最新版本的安装脚本。
在将命令传递给bash之前,审查脚本以确保其不执行任何您不同意的操作总是一个好习惯。您可以通过从curl命令的末尾删除| bash
部分来做到这一点。
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh
请审查脚本,确保您对其所做的更改感到满意。当您满意时,请再次运行命令,末尾添加 | bash
。您使用的URL将根据NVM的最新版本进行更改,但就目前而言,可以使用以下命令下载并执行脚本:
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
这将在您的用户账户中安装NVM脚本。在使用它之前,您必须首先加载您的.bashrc
文件。
- source ~/.bashrc
现在,您可以向NVM查询有哪些Node版本可用。
- nvm list-remote
. . . v18.0.0 v18.1.0 v18.2.0 v18.3.0 v18.4.0 v18.5.0 v18.6.0 v18.7.0 v18.8.0 v18.9.0 v18.9.1 v18.10.0 v18.11.0 v18.12.0 (LTS: Hydrogen) v18.12.1 (LTS: Hydrogen) v18.13.0 (最新LTS: Hydrogen) v19.0.0 v19.0.1 v19.1.0 v19.2.0 v19.3.0 v19.4.0
这是一个非常长的列表。您可以通过输入列表中任意一个发布版本来安装Node的一个版本。例如,要获取版本v14.10.0,可以运行:
- nvm install v14.10.0
通过列出已安装的不同版本,您可以查看它们。
nvm list
-> v14.10.0 v14.21.2 default -> v14.10.0 iojs -> N/A (default) unstable -> N/A (default) node -> stable (-> v14.21.2) (default) stable -> 14.21 (-> v14.21.2) (default) . . .
这显示了第一行上当前活动的版本(-> v14.10.0
),随后是一些命名的别名以及这些别名指向的版本。
注意
nvm use system
来激活系统安装的Node版本。此外,Node的各个长期支持(LTS)版本也有不同的别名。
lts/* -> lts/hydrogen (-> N/A) lts/argon -> v4.9.1 (-> N/A) lts/boron -> v6.17.1 (-> N/A) lts/carbon -> v8.17.0 (-> N/A) lts/dubnium -> v10.24.1 (-> N/A) lts/erbium -> v12.22.12 (-> N/A) lts/fermium -> v14.21.2 lts/gallium -> v16.19.0 (-> N/A) lts/hydrogen -> v18.13.0 (-> N/A)
您也可以根据这些别名安装发布版本。例如,要安装最新的长期支持版本Hydrogen,请运行以下命令:
- nvm install lts/hydrogen
Downloading and installing node v18.13.0…
. . .
Now using node v18.13.0 (npm v8.19.3)
通过使用nvm use
命令,您可以在已安装的版本之间进行切换。
- nvm use v14.10.0
Now using node v14.10.0 (npm v6.14.8)
您可以使用与其他部分相同的方法验证安装是否成功:
command node -v
v14.10.0
您的计算机上已按预期安装了正确版本的 Node.js。同时,也有一个兼容的 npm 版本可用。
移除 Node.js
您可以根据 Node.js 的安装方式,使用 apt
或 nvm
来卸载它。如果要从系统存储库中移除该版本,请使用 apt remove
命令。
sudo apt remove nodejs
默认情况下,apt remove
会保留自安装以来创建的所有本地配置文件。如果您不想保存配置文件以备将来使用,可以使用 apt purge
。
sudo apt purge nodejs
为了卸载使用 nvm
安装的 Node.js 版本,请先确定它是否为当前活动版本。
nvm current
如果您的目标版本不是当前活动版本,您可以运行:
nvm uninstall <node_version>
Uninstalled node <node_version>
该命令将卸载所选的 Node.js 版本。
如果您想删除的版本是当前正在使用的版本,请首先停用 nvm
以启用更改。
nvm deactivate
现在您可以使用之前使用过的卸载命令来卸载当前版本。这将删除与目标 Node.js 版本相关的所有文件。
结论
在 Ubuntu 20.04 服务器上启动和运行 Node.js 有多种方法。根据您的具体情况,选择最适合您需求的方法。虽然使用 Ubuntu 存储库中的打包版本是一种方法,但使用 nvm
或 NodeSource PPA 可以提供额外的灵活性。
有关使用 Node.js 进行编程的更多详细信息,请参阅我们的教程系列《Node.js 编程入门》。