介绍

Node.js 是用于服务器端编程的 JavaScript 运行时。它允许开发人员使用 JavaScript 创建可扩展的后端功能,这是一种许多人在基于浏览器的 Web 开发中已经熟悉的语言。

在本指南中,我们将向您展示在 Ubuntu 22.04 服务器上安装 Node.js 的三种不同方法:

  • 使用 apt 从 Ubuntu 的默认软件仓库安装 nodejs

  • 使用 apt 和备用 PPA 软件存储库来安装特定版本的 nodejs

  • 安装 nvm,Node 版本管理器,并使用它来安装和管理 Node.js 的多个版本

对于许多用户来说,使用带有默认 repo 的 apt 就足够了。如果您需要特定的较新(或旧)版本的 Node,您应该使用 PPA 存储库。如果您正在积极开发 Node 应用程序,并且需要经常在 node 版本之间切换,请选择 nvm 方法。

先决条件

本指南假定您使用的是 Ubuntu 22.04。在开始之前,您应该在系统上设置一个具有 sudo 权限的非 root 用户帐户。您可以按照 Ubuntu 22.04 初始服务器设置教程 了解如何执行此操作。

如果您希望在浏览器中使用终端来学习本教程,请单击 Launch an Interactive Terminal! 按钮开始。您将能够直接在浏览器中试验和运行所有命令。

启动交互式终端!

选项 1 — 从默认存储库安装带有 Apt 的 Node.js

Ubuntu 22.04 在其默认存储库中包含一个 Node.js 版本,可用于跨多个系统提供一致的体验。在撰写本文时,存储库中的版本是 12.22.9。这不会是最新版本,但它应该是稳定且足以快速试验该语言的。

警告: Ubuntu 22.04 版本 12.22.9 中包含的 Node.js 版本是 LTS 或“长期支持”版本。它在技术上已经过时,但应该在 Ubuntu 24.04 发布之前得到支持。

要获得此版本,您可以使用 apt 包管理器。首先通过键入以下内容刷新您的本地包索引:

sudo apt 更新

然后安装 Node.js:

sudo apt install nodejs

提示确认安装时按“Y”。如果系统提示您重新启动任何服务,请按 ENTER 接受默认设置并继续。通过查询 node 的版本号来检查安装是否成功:

节点-v

输出v12.22.9

如果存储库中的包满足您的需求,那么您只需执行此操作即可使用 Node.js。在大多数情况下,您还需要安装 Node.js 包管理器 npm。您可以通过使用 apt 安装 npm 包来做到这一点:

sudo apt 安装 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 v14、v16 和 v18 在撰写本文时可用。

首先,我们将安装 PPA 以访问其包。在您的主目录中,使用 curl 检索首选版本的安装脚本,确保将 18.x 替换为首选版本字符串(如果不同)。

光盘~
curl -sL https://deb.nodesource.com/setup_18.x -o nodesource_setup.sh

有关可用版本的更多信息,请参阅 NodeSource 文档。

您可以使用 nano(或您喜欢的文本编辑器)检查下载脚本的内容:

纳米 nodesource_setup.sh

运行第三方 shell 脚本并不总是被认为是最佳实践,但在这种情况下,NodeSource 实现自己的逻辑,以确保根据发行版和版本要求将正确的命令传递给您的包管理器。如果您对脚本可以安全运行感到满意,请退出编辑器,然后使用 sudo 运行脚本:

sudo bash nodesource_setup.sh

PPA 将添加到您的配置中,并且您的本地包缓存将自动更新。您现在可以按照与上一节中相同的方式安装 Node.js 包。在安装新版本之前,使用 sudo apt remove nodejs npm 完全删除旧的 Node.js 包可能是个好主意。这根本不会影响您的配置,只会影响已安装的版本。第三方 PPA 并不总是以直接升级库存软件包的方式打包他们的软件,如果您遇到问题,您可以随时尝试恢复到全新的状态。

sudo apt install nodejs

通过运行带有 -v 版本标志的 node 来验证您是否已安装新版本:

节点-v

输出v18.7.0

NodeSource nodejs 包同时包含 node 二进制文件和 npm,因此您不需要单独安装 npm

至此,您已经使用 apt 和 NodeSource PPA 成功安装了 Node.js 和 npm。下一节将展示如何使用 Node 版本管理器来安装和管理 Node.js 的多个版本。

选项 3 — 使用节点版本管理器安装节点

另一种特别灵活的安装 Node.js 的方法是使用 nvm,即节点版本管理器。该软件允许您同时安装和维护许多不同的独立版本的 Node.js 及其相关的 Node 包。

要在 Ubuntu 22.04 机器上安装 NVM,请访问 项目的 GitHub 页面。从显示在主页上的 README 文件中复制“curl”命令。这将为您提供最新版本的安装脚本。

在将命令通过管道传递给 bash 之前,最好先审核脚本以确保它没有做任何你不同意的事情。您可以通过删除 | curl 命令末尾的 bash 段:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh

看看并确保您对它所做的更改感到满意。满意后,使用 | 再次运行命令bash 附加在末尾。您使用的 URL 将根据 nvm 的最新版本而改变,但截至目前,可以通过键入以下内容下载和执行脚本:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh |重击

这会将“nvm”脚本安装到您的用户帐户。要使用它,您必须首先获取 .bashrc 文件:

源〜/ .bashrc

现在,您可以询问 NVM 哪些版本的 Node 可用:

nvm 远程列表

输出。 . .
v16.11.1
v16.12.0
v16.13.0(LTS:镓)
v16.13.1(LTS:镓)
v16.13.2(LTS:镓)
v16.14.0(最新 LTS:镓)
v17.0.0
v17.0.1
v17.1.0
v17.2.0
v17.3.0
v17.3.1
v17.4.0
v17.5.0
v17.6.0

这是一个很长的清单!您可以通过键入您看到的任何发行版本来安装 Node 版本。例如,要获取版本 v16.14.0(另一个 LTS 版本),您可以键入:

nvm 安装 v16.14.0

您可以通过键入以下内容查看已安装的不同版本:

非虚拟机列表
输出-> v16.14.0
默认 -> v16.14.0
iojs -> 不适用(默认)
不稳定 -> 不适用(默认)
节点->稳定(-> v16.14.0)(默认)
稳定 -> 16.14 (-> v16.14.0) (默认)
lts/* -> lts/镓 (-> v16.14.0)
lc/argon -> vch.ya.1 (-> N/A)
lts/硼-> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.10 (-> N/A)
lts/fermium -> v14.19.0 (-> N/A)
lts/镓 -> v16.14.0

这会在第一行 (-> v16.14.0) 显示当前活动的版本,然后是一些命名别名和这些别名指向的版本。

**注意:**如果您还通过 apt 安装了 Node.js 版本,您可能会在此处看到 system 条目。您始终可以使用 nvm use system 激活系统安装的 Node 版本。

您也可以安装基于这些别名的版本。例如,要安装 fermium,请运行以下命令:

nvm 安装 lts/fermium

输出正在下载安装node v14.19.0...
正在下载 https://nodejs.org/dist/v14.19.0/node-v14.19.0-linux-x64.tar.xz...
################################################# ############################## 100.0%
使用 sha256sum 计算校验和
校验和匹配!
现在使用节点 v14.19.0 (npm v6.14.16)

您可以使用其他部分中的相同技术验证安装是否成功,方法是键入:

节点-v

输出v14.19.0

正如我们预期的那样,正确版本的 Node 已安装在我们的机器上。 npm 的兼容版本也可用。

结论

有很多方法可以在 Ubuntu 22.04 服务器上启动和运行 Node.js。您的情况将决定上述哪种方法最适合您的需求。虽然使用 Ubuntu 存储库中的打包版本是最简单的方法,但使用 nvm 或 NodeSource PPA 提供了额外的灵活性。

有关使用 Node.js 编程的更多信息,请参阅我们的教程系列 [如何在 Node.js 中编码](https://www.digitalocean.com/community/tutorial_series/how-to-code-in-node- js)。

Logo

更多推荐