介绍
Node.js是一个用于通用编程的JavaScript平台,允许用户快速构建网络应用程序。
在本指南中,我们将向您展示如何在 Debian 9 服务器上开始使用 Node.js。
前提条件
本指南假定您正在使用 Debian 9. 在您开始之前,您应该有一个非根用户帐户,在您的系统上设置了 sudo 权限。
安装 Debian 的 Distro-Stable 版本
Debian 包含 Node.js 的版本在其默认存储库中。在写作时,这个版本是 4.8.2,将于 2018 年 4 月底到期,如果你想使用一个稳定的和足够的选项来尝试该语言,那么从存储库中安装可能会有意义。
要获得 Node.js 的分布式稳定版本,您可以使用apt
包管理器。
1sudo apt update
然后从存储库中安装 Node.js 包:
1sudo apt install nodejs
如果存储库中的包适合您的需求,那么这就是您需要做的,以设置Node.js。
要检查在这些初步步骤后安装了哪个版本的 Node.js,请键入:
1nodejs -v
由于与另一个包的冲突,来自 Debian 存储库的可执行程序被称为nodejs
而不是node
。
一旦你确定了从 Debian 存储库中安装了哪个 Node.js 版本,你就可以决定你是否想与不同的版本、包存或版本管理器一起工作。
使用 PPA 安装
要使用更新的 Node.js 版本,您可以添加由 NodeSource 维护的 PPA (个人包档案),这将包含比官方 Debian 存储库更新的 Node.js 版本,并允许您在 Node.js v4.x (较早的长期支持版本,将支持到 2018 年 4 月底), Node.js v6.x (支持到 2019 年 4 月), Node.js v8.x (当前的 LTS 版本,支持到 2019 年 12 月) 和 Node.js v10.x (最新的版本,支持到 2021 年 4 月) 之间进行选择。
让我们先更新本地包索引并安装‘curl’,您将使用它来访问PPA:
1sudo apt update
2sudo apt install curl
接下来,让我们安装PPA以获取其内容。从您的主目录中,使用‘curl’来获取您喜爱的版本的安装脚本,确保用您喜爱的版本字符串(如果不同)取代‘10.x’:
1cd ~
2curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh
您可以使用「nano」或 您的偏好文本编辑器检查本脚本的内容:
1nano nodesource_setup.sh
在sudo
下运行脚本:
1sudo bash nodesource_setup.sh
PPA 将被添加到您的配置中,您的本地包缓存将自动更新. 运行安装脚本后,您可以以上面的方式安装 Node.js 包:
1sudo apt install nodejs
要检查在这些初步步骤后安装了哪个版本的 Node.js,请键入:
1nodejs -v
1[secondary_label Output]
2v10.9.0
nodejs
包包含nodejs
二进制和npm
,因此您不需要单独安装npm
。
npm
使用您的主目录中的配置文件来跟踪更新. 它将创建在您首次运行 npm
. 执行此命令以验证 npm
已安装并创建配置文件:
1npm -v
1[secondary_label Output]
26.2.0
为了使某些npm
包工作(例如需要编译源代码的包),您需要安装build-essential
包:
1sudo apt install build-essential
您现在有必要的工具来处理需要编译源代码的npm
包。
使用 NVM 安装
通过apt
来安装 Node.js 的替代方法是使用一个名为nvm
的工具,即Node.js 版本管理器
。而不是在操作系统级别上工作,nvm
在您的主目录中以独立目录级别工作,这意味着您可以安装多个 Node.js 版本,而不会影响整个系统。
通过nvm
来控制您的环境,您可以访问最新版本的 Node.js,并保留和管理以前的版本,但它与apt
不同,并且您使用它来管理的 Node.js 版本与您使用apt
来管理的版本不同。
要从 项目的GitHub页面下载nvm
安装脚本,您可以使用curl
。
1curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh
检查nano
的安装脚本:
1nano install_nvm.sh
运行bash
的脚本:
1bash install_nvm.sh
它会将软件安装在您的主目录的子目录中,在 ~/.nvm
. 它还会添加必要的行到您的 ~/.profile
文件中,以便使用该文件。
要访问nvm
功能,您需要退出并再次登录,或者源~/.profile
文件,以便您的当前会话知道这些更改:
1source ~/.profile
安装了nvm
,您可以安装单独的 Node.js 版本. 有关可用的 Node.js 版本的信息,请键入:
1nvm ls-remote
1[secondary_label Output]
2...
3 v8.11.1 (Latest LTS: Carbon)
4 v9.0.0
5 v9.1.0
6 v9.2.0
7 v9.2.1
8 v9.3.0
9 v9.4.0
10 v9.5.0
11 v9.6.0
12 v9.6.1
13 v9.7.0
14 v9.7.1
15 v9.8.0
16 v9.9.0
17 v9.10.0
18 v9.10.1
19 v9.11.0
20 v9.11.1
21 v10.0.0
22 v10.1.0
23 v10.2.0
24 v10.2.1
25 v10.3.0
26 v10.4.0
27 v10.4.1
28 v10.5.0
29 v10.6.0
30 v10.7.0
31 v10.8.0
32 v10.9.0
正如你所看到的,本文写作时的当前LTS版本是v8.11.1。
1nvm install 8.11.1
通常,nvm
会切换到使用最近安装的版本,您可以通过键入nvm
来使用您刚刚下载的版本:
1nvm use 8.11.1
当您使用nvm
安装 Node.js 时,可执行的版本称为node
。
1node -v
1[secondary_label Output]
2v8.11.1
如果您有多个 Node.js 版本,您可以通过键入来查看安装的内容:
1nvm ls
如果您想默认使用其中一个版本,请键入:
1nvm alias default 8.11.1
此版本将在新会话启动时自动选择,您还可以用以下字符引用:
1nvm use default
每个版本的 Node.js 都将跟踪其自己的包,并有npm
可用来管理这些包。
您还可以将npm
安装包放到 Node.js 项目的./node_modules
目录中,使用以下语法来安装express
模块:
1npm install express
如果您想在全球范围内安装该模块,使其可用于使用相同版本的 Node.js 的其他项目,则可以添加-g
标志:
1npm install -g express
这将安装该包在:
1~/.nvm/versions/node/node_version/lib/node_modules/express
全球安装模块将允许您从命令行运行命令,但您必须将该包链接到您的本地领域,以要求它从程序中执行:
1npm link express
您可以通过键入为您提供的 nvm 选项的更多信息:
1nvm help
如何删除 Node.js
您可以使用apt
或nvm
来卸载 Node.js,取决于您想要瞄准的版本. 要从存储库或PPA中删除安装的版本,您需要在系统级别使用apt
实用程序。
若要删除这些版本,请键入以下内容:
1sudo apt remove nodejs
此命令会删除包和配置文件。
若要卸载您已使用nvm
启用的 Node.js 版本,请先确定您想要移除的版本是否是当前活跃的版本:
1nvm current
如果您瞄准的版本不是当前活跃的版本,您可以运行:
1nvm uninstall node_version
此命令会卸载选定的 Node.js 版本。
如果您想要删除的版本 **是目前的活跃版本,您必须先禁用nvm
才能启用更改:
1nvm deactivate
您现在可以使用上面的卸载
命令卸载当前版本,该命令将删除与目标版本的 Node.js 相关的所有文件,除了可用于重新安装的缓存文件。
结论
您可以在 Debian 9 服务器上使用 Node.js 的几种方法。您的情况将决定哪种方法最适合您的需求。 虽然在 Debian 存储库中使用包装版本是实验的选择,但从 PPA 安装并使用npm
或nvm
提供额外的灵活性。