如何在Ubuntu22.04上安装Node.js

来自菜鸟教程
跳转至:导航、​搜索

介绍

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

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

  • 使用 apt 从 Ubuntu 的默认软件存储库安装 nodejs 软件包
  • 使用带有备用 PPA 软件存储库的 apt 来安装 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.5。 这不会是最新版本,但它应该是稳定且足以快速试验该语言的。

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


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

sudo apt update

然后安装 Node.js:

sudo apt install nodejs

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

node -v
Outputv12.22.9

如果存储库中的包满足您的需求,那么您只需执行此操作即可使用 Node.js。 在大多数情况下,您还需要安装 Node.js 包管理器 npm。 您可以通过使用 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 v14、v16 和 v17 在撰写本文时可用。

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

cd ~
curl -sL https://deb.nodesource.com/setup_17.x -o nodesource_setup.sh

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

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

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 来验证您是否已安装新版本:

node -v
Outputv17.6.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 | bash

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

source ~/.bashrc

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

nvm list-remote
Output. . .
       v16.11.1
       v16.12.0
       v16.13.0   (LTS: Gallium)
       v16.13.1   (LTS: Gallium)
       v16.13.2   (LTS: Gallium)
       v16.14.0   (Latest LTS: Gallium)
        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 install v16.14.0

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

nvm list
Output->     v16.14.0
default -> v16.14.0
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.14.0) (default)
stable -> 16.14 (-> v16.14.0) (default)
lts/* -> lts/gallium (-> v16.14.0)
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.10 (-> N/A)
lts/fermium -> v14.19.0 (-> N/A)
lts/gallium -> v16.14.0

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

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


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

nvm install lts/fermium
OutputDownloading and installing node v14.19.0...
Downloading https://nodejs.org/dist/v14.19.0/node-v14.19.0-linux-x64.tar.xz...
################################################################################# 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v14.19.0 (npm v6.14.16)

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

node -v
Outputv14.19.0

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

结论

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

有关使用 Node.js 编程的更多信息,请参阅我们的教程系列 如何在 Node.js 中编码