介绍
Node.js是用于服务器侧编程的JavaScript运行时间,它允许开发人员使用JavaScript创建可扩展的后端功能,这是许多人在基于浏览器的Web开发中已经熟悉的语言。
在本指南中,您将学习如何在 Debian 10 服务器上以三种不同的方式安装 Node.js:
- 使用默认的 Debian 存储库
- 使用 PPA 软件存储库
- 使用 NVM (Node 版本管理器) 来安装和激活不同版本的 Node。
对于许多用户来说,与默认存储库一起使用apt
就足够了. 如果您需要特定的新版本(或旧版本)的 Node,您应该使用 PPA 存储库. 如果您正在积极开发 Node 应用程序,并且需要经常切换版本,请选择 NVM 方法。
前提条件
在你开始之前,你应该有一个非 root 用户,在你的系统上设置了 sudo 权限,你可以通过遵循 Debian 10 的初始服务器设置教程来学习如何设置此设置。
从默认存储库中安装 Node.js 与 Apt
Debian 在其默认存储库中包含了一种版本的 Node.js,可用于在多个系统中提供一致的体验. 在写作时,存储库中的版本是 10.24.0. 这将不是最新版本,但它应该是稳定的,足以快速尝试该语言。
<$>[warning] 警告: Debian 10 版本 10.24.0 所包含的 Node.js 版本不受支持,也不受维护。
要从默认的 Debian 软件存储库中获取 Node.js,您可以使用apt
包管理器。
1sudo apt update
然后安装 Node.js 包:
1sudo apt install nodejs
要验证安装成功,请运行节点
命令以-v
旗帜获取版本:
1node -v
1[secondary_label Output]
2v10.24.0
如果存储库中的包适合您的需求,这就是您需要做的,以便与 Node.js 进行设置。在大多数情况下,您还需要安装 Node.js 包管理器的 npm
。
1sudo apt install npm
这将允许您安装与 Node.js 一起使用的模块和包。
在此时,您已经成功安装了 Node.js 和 npm
使用apt
和默认的 Ubuntu 软件存储库,下一节将展示如何使用替代的存储库来安装不同版本的 Node.js。
使用 NodeSource PPA 使用 Apt 安装 Node.js
要使用更新的 Node.js 版本,您可以从由 NodeSource维护的 PPA (个人包档案)中安装。 这是一个替代的存储库,它仍然与 apt
工作,并且将具有比官方的 Debian 存储库更新的 Node.js 版本。
从您的主目录中,使用curl
来获取您喜爱的 Node.js 版本的安装脚本. 如果您没有安装的curl
,您可以使用此命令安装它,然后继续下一步:
1sudo apt install curl
安装了curl
后,您可以开始安装 Node.js。本示例安装了版本16.x
。
1curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
2sudo apt install nodejs
在这种情况下,您不需要安装单独的npm
包,因为它包含在nodejs
包中。
通过使用-v
版本选项运行节点
来验证安装:
1node -v
1[secondary_label Output]
2v16.14.2
npm
使用您的主目录中的配置文件来跟踪更新. 它将创建在您首次运行 npm
. 执行此命令以验证 npm
已安装:
1npm -v
1[secondary_label Output]
28.5.0
使用 Node 版本管理器安装 Node
通过apt
来安装 Node.js 的替代方法是使用一个名为nvm
的工具,即Node 版本管理器
。而不是在操作系统层面工作,nvm
在用户主目录中的独立目录层面工作,这意味着您可以安装多个 Node.js 版本,而不会影响整个系统。
通过nvm
来控制您的环境,您可以访问最新版本的 Node.js,同时还可以保留和管理以前的版本,但它与apt
不同,并且您使用它来管理的 Node.js 版本与您使用apt
来管理的版本不同。
要在 Debian 10 上安装「nvm」,请遵循 NVM Github 存储库中的 README 文件上的安装说明。
该 URL 可能因nvm
的最新版本而改变,但从此开始,可以通过键入下载并执行脚本:
1curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
这将为您的用户帐户安装 nvm
脚本. 要使用它,您必须先源您的 .bashrc
文件。
1source ~/.bashrc
现在,您可以使用nvm
列出可用的 Node 版本:
1nvm list-remote
这个命令会产生长的输出:
1[secondary_label Output]
2...
3 v15.11.0
4 v15.12.0
5 v15.13.0
6 v15.14.0
7 v16.0.0
8 v16.1.0
9 v16.2.0
10 v16.3.0
11 v16.4.0
12 v16.4.1
13 v16.4.2
14 v16.5.0
15 v16.6.0
16 v16.6.1
17 v16.6.2
18 v16.7.0
19 v16.8.0
20 v16.9.0
21 v16.9.1
22 v16.10.0
23 v16.11.0
24 v16.11.1
25 v16.12.0
26 v16.13.0 (LTS: Gallium)
27 v16.13.1 (LTS: Gallium)
28 v16.13.2 (LTS: Gallium)
29 v16.14.0 (LTS: Gallium)
30 v16.14.1 (LTS: Gallium)
31 v16.14.2 (Latest LTS: Gallium)
32 v17.0.0
33 v17.0.1
34...
您可以通过键入您看到的任何版本来安装 Node 版本,例如,要安装版本 v14.10.0,您可以键入:
1nvm install v14.10.0
您可以通过键入查看您已安装的不同版本:
1nvm ls
1[secondary_label Output]
2-> v14.10.0
3 system
4default -> v14.10.0
5iojs -> N/A (default)
6unstable -> N/A (default)
7node -> stable (-> v14.10.0) (default)
8stable -> 14.10 (-> v14.10.0) (default)
9...
这显示了第一个行(-> v14.10.0
)上当前活跃的版本,然后是一些命名的代名和这些代名指向的版本。
<$>[注]
注: 如果您还通过apt
安装了 Node.js 的版本,您可能会在这里看到一个系统
条目。
此外,此输出列出了各种 Node 长期支持 (LTS) 版本的副名称:
1[secondary_label Output]
2. . .
3lts/* -> lts/fermium (-> N/A)
4lts/argon -> v4.9.1 (-> N/A)
5lts/boron -> v6.17.1 (-> N/A)
6lts/carbon -> v8.17.0 (-> N/A)
7lts/dubnium -> v10.24.1 (-> N/A)
8lts/erbium -> v12.22.11 (-> N/A)
9lts/fermium -> v14.19.1 (-> N/A)
10lts/gallium -> v16.14.2 (-> N/A)
例如,要安装最新的长期支持版本,‘gallium’,请执行以下操作:
1nvm install lts/gallium
1[secondary_label Output]
2Downloading and installing node v16.14.2...
3...
4Now using node v16.14.2 (npm v8.5.0)
您可以通过键入来验证安装成功:
1node -v
1[secondary_label Output]
2v16.14.2
如果您想默认使用特定 Node 版本,请在您选择的版本中输入以下内容:
1nvm alias default 14.10.0
您在 Node 中启动新会话时会自动选择此版本,您还可以用以下字符引用它:
1nvm use default
1[secondary_label Output]
2Now using node v14.10.0 (npm v6.14.8)
每个版本的 Node.js 都将跟踪其自己的包,并有npm
可用来管理这些包。
如何删除 Node.js
您可以使用apt
或nvm
去卸载 Node.js,取决于您想要瞄准的版本. 要从 Debian 存储库或 PPA 中移除已安装的版本,您需要在系统级别上使用apt
实用程序。
若要删除这些版本,请键入以下内容:
1sudo apt remove nodejs
此命令会删除包和配置文件。
若要卸载您已使用nvm
启用的 Node.js 版本,请先确定您想要移除的版本是否是当前活跃的版本:
1nvm current
1[secondary_label Output]
2v16.14.2
如果您瞄准的版本不是当前活跃的版本,则可以运行此命令,使用您想要删除的版本:
1nvm uninstall node_version_to_remove
此命令会卸载选定的 Node.js 版本。
如果您想要删除的版本 **是目前的活跃版本,您必须先禁用nvm
才能启用更改:
1nvm deactivate
现在,您可以使用nvm uninstall
命令与当前版本的 Node.js 一起卸载当前版本。
1nvm uninstall current_node_version
这将删除与 Node.js 的目标版本相关的所有文件,除了可用于重新安装的缓存文件。
结论
在您的 Debian 10 服务器上,有几种方法可以使用 Node.js。您的情况将决定哪种方法最适合您的需求。在 Debian 存储库中使用包装版本是实验的选择,但从 PPA 安装并使用 NodeSource PPA 或 'nvm' 工作提供了额外的灵活性。
有关 Node.js 编程的更多信息,请参阅我们的教程系列 How To Code in Node.js。