如何在Debian9上安装Node.js
介绍
Node.js 是一个用于通用编程的 JavaScript 平台,允许用户快速构建网络应用程序。 通过在前端和后端利用 JavaScript,Node.js 使开发更加一致和集成。
在本指南中,我们将向您展示如何在 Debian 9 服务器上开始使用 Node.js。
先决条件
本指南假定您使用的是 Debian 9。 在开始之前,您应该在系统上设置一个具有 sudo 权限的非 root 用户帐户。 您可以按照 Debian 9 的 初始服务器设置来了解如何设置它。
为 Debian 安装 Distro-Stable 版本
Debian 在其默认存储库中包含一个 Node.js 版本。 在撰写本文时,此版本为 4.8.2,将于 2018 年 4 月结束生命周期。 如果您想使用稳定且足够的选项来试验该语言,那么从存储库安装可能是有意义的。 但是,对于开发和生产用例,建议您安装带有 PPA 的更新版本。 我们将在下一步讨论如何从 PPA 安装。
要获得 Node.js 的发行版稳定版本,您可以使用 apt
包管理器。 首先,刷新你的本地包索引:
sudo apt update
然后从存储库安装 Node.js 包:
sudo apt install nodejs
如果存储库中的包满足您的需求,那么您只需执行此操作即可使用 Node.js。
要在这些初始步骤之后检查您安装了哪个版本的 Node.js,请键入:
nodejs -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:
sudo apt update sudo apt install curl
接下来,让我们安装 PPA 以访问其内容。 在您的主目录中,使用 curl
检索您的首选版本的安装脚本,确保将 10.x
替换为您的首选版本字符串(如果不同):
cd ~ curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh
您可以使用 nano
或 您首选的文本编辑器 检查此脚本的内容:
nano nodesource_setup.sh
运行sudo
下的脚本:
sudo bash nodesource_setup.sh
PPA 将添加到您的配置中,并且您的本地包缓存将自动更新。 运行安装脚本后,您可以按照与上面相同的方式安装 Node.js 包:
sudo apt install nodejs
要在这些初始步骤之后检查您安装了哪个版本的 Node.js,请键入:
nodejs -v
Outputv10.9.0
nodejs
软件包包含 nodejs
二进制文件以及 npm
,因此您无需单独安装 npm
。
npm
使用主目录中的配置文件来跟踪更新。 它将在您第一次运行 npm
时创建。 执行此命令以验证 npm
是否已安装并创建配置文件:
npm -v
Output6.2.0
为了使某些 npm
包能够工作(例如,那些需要从源代码编译代码的包),您需要安装 build-essential
包:
sudo 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
。 请注意,版本号可能与此处突出显示的不同:
curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh
使用 nano
检查安装脚本:
nano install_nvm.sh
使用 bash
运行脚本:
bash install_nvm.sh
它会将软件安装到您的主目录 ~/.nvm
的子目录中。 它还会将必要的行添加到您的 ~/.profile
文件中以使用该文件。
要访问 nvm
功能,您需要注销并重新登录或获取 ~/.profile
文件,以便当前会话了解更改:
source ~/.profile
安装 nvm
后,您可以安装隔离的 Node.js 版本。 有关可用的 Node.js 版本的信息,请键入:
nvm ls-remote
Output... v8.11.1 (Latest LTS: Carbon) v9.0.0 v9.1.0 v9.2.0 v9.2.1 v9.3.0 v9.4.0 v9.5.0 v9.6.0 v9.6.1 v9.7.0 v9.7.1 v9.8.0 v9.9.0 v9.10.0 v9.10.1 v9.11.0 v9.11.1 v10.0.0 v10.1.0 v10.2.0 v10.2.1 v10.3.0 v10.4.0 v10.4.1 v10.5.0 v10.6.0 v10.7.0 v10.8.0 v10.9.0
如您所见,撰写本文时当前的 LTS 版本是 v8.11.1。 您可以通过键入以下内容进行安装:
nvm install 8.11.1
通常,nvm
会切换到使用最近安装的版本。 您可以通过键入以下命令告诉 nvm
使用您刚刚下载的版本:
nvm use 8.11.1
当您使用 nvm
安装 Node.js 时,可执行文件称为 node
。 您可以通过键入以下内容查看 shell 当前使用的版本:
node -v
Outputv8.11.1
如果您有多个 Node.js 版本,您可以通过键入以下内容查看安装的内容:
nvm ls
如果您希望默认其中一个版本,请键入:
nvm alias default 8.11.1
此版本将在新会话产生时自动选择。 您也可以通过别名引用它,如下所示:
nvm use default
每个版本的 Node.js 都会跟踪它自己的包,并有 npm
可用于管理这些包。
您还可以让 npm
将包安装到 Node.js 项目的 ./node_modules
目录。 使用以下语法安装 express
模块:
npm install express
如果您想全局安装该模块,使其可用于使用相同版本 Node.js 的其他项目,您可以添加 -g
标志:
npm install -g express
这会将软件包安装在:
~/.nvm/versions/node/node_version/lib/node_modules/express
全局安装模块将允许您从命令行运行命令,但您必须将包链接到本地球体才能在程序中使用它:
npm link express
您可以通过键入以下内容了解有关 nvm 可用选项的更多信息:
nvm help
删除 Node.js
您可以使用 apt
或 nvm
卸载 Node.js,具体取决于您要定位的版本。 要从存储库或 PPA 中删除安装的版本,您需要在系统级别使用 apt
实用程序。
要删除这些版本中的任何一个,请键入以下内容:
sudo apt remove nodejs
此命令将删除包和配置文件。
要卸载您使用 nvm
启用的 Node.js 版本,首先确定您要删除的版本是否是当前活动版本:
nvm current
如果您的目标版本是 而不是 当前的活动版本,您可以运行:
nvm uninstall node_version
此命令将卸载所选版本的 Node.js。
如果您要删除 的版本是 当前激活的版本,您必须先停用 nvm
以启用您的更改:
nvm deactivate
您现在可以使用上面的 uninstall
命令卸载当前版本,这将删除与 Node.js 的目标版本关联的所有文件,但可用于重新安装的缓存文件除外。
结论
有很多方法可以在 Debian 9 服务器上启动和运行 Node.js。 您的情况将决定上述哪种方法最适合您的需求。 虽然使用 Debian 存储库中的打包版本是一种实验选项,但从 PPA 安装并使用 npm
或 nvm
提供了额外的灵活性。