如何在 Ubuntu 16.04 LTS 上安装 Node.js?

17 Mar 2025 | 5 分钟阅读

引言

Node.js 是一个 JavaScript 框架,用于在服务器端执行 JavaScript 代码。 它由 Ryan Dahl 设计和开发,于 2009 年 5 月 27 日首次发布。

它遵循事件驱动架构,并由 Node.js 基金会支持。

它被科技巨头微软、IBM、GoDaddy、Yahoo 等广泛使用。

在本教程中,我们将在 Ubuntu 操作系统上安装 Node.js。 整个过程需要一些先决条件,并包括以下步骤。

NodeJS 是一个开源和跨平台的服务器环境,可以在 macOS、Unix、Linux、Windows 等上执行。 NodeJS 也是 JavaScript 的后端运行时环境,在 V8 JavaScript 引擎上执行,并在 Web 浏览器之外运行 JavaScript 代码。

  • NodeJS 允许开发人员利用 JavaScript 来指定命令行工具和服务器端脚本。
  • 在服务器上,执行 JavaScript 代码的能力通常用于生成动态网页内容,因为页面被传输到用户的 Web 浏览器。
  • 因此,NodeJS 说明了 "JavaScript 无处不在" 的范例,跨一种编程语言的综合 Web 应用程序开发,无论是否对客户端与服务器端编程使用不同的语言。
  • NodeJS 包括一种能够进行异步 I/O 的事件驱动架构。
  • 这些设计的选择侧重于优化具有各种 I/O 操作的 Web 应用程序和实时 Web 应用程序(例如,实时浏览器游戏和通信程序)中的可扩展性和吞吐量。
  • NodeJS 的分布式开发项目以前由 NodeJS 基金会管理,并已与 JS 基金会合并,以形成 OpenJS 基金会。
  • OpenJS 基金会由 Linux 基金会的协作项目计划提供。
  • NodeJS 软件公司用户包括 Amazon Web Services、Yahoo!、Walmart、SAP、PayPal、Netflix、Microsoft、LinkedIn、IBM、Groupon 和 GoDaddy。

前提条件

  • Ubuntu
  • 使用 sudo 登录终端
  • 互联网连接(从 www 下载软件包)

NodeJS 的简要历史

NodeJS 最初于 2009 年由 Ryan Dahl 编写,大约在最初的服务器端 JavaScript 环境 Netscape 的 LiveWire Pro web 推出 13 年后。 第一次发布只支持 Mac OS X 和 Linux。 它的维护和开发由 Dahl 指导,后来获得 Joyent 的批准。

2009 年,Dahl 分析了最著名的 Web 服务器 Apache HTTP Server 管理多个并发连接的有限可能性,以及在代码阻止整个进程或在并发连接期间表示两个或多个执行堆栈时建立代码的最常见方式。

  • Dahl 于 2009 年 11 月 8 日在欧洲 JSConf 上展示了该项目。
  • NodeJS 结合了低级 I/O API、事件循环和 Google 的 V8 JavaScript 引擎。
  • 2010 年 1 月,宣布了 NodeJS 环境的包管理器,称为 npm。
  • 程序员可以使用包管理器更轻松地发布和分发 NodeJS 包源代码,它旨在简化包的安装、更新和卸载过程。
  • Joyent 和 Microsoft 在 2011 年 1 月实现了 NodeJS Windows 版本。
  • 最初创建的 NodeJS 支持 Windows 版本于 2011 年 7 月发布。
  • Dahl 晋升 npm 创建者和同事 Isaac Schlueter 在 2012 年 1 月维护该项目。
  • 2014 年 1 月,Schlueter 表示 Timothy J. Fountaine 将管理该项目。

Fedor Indutny 于 2014 年 12 月开始了 io.js,这是一个 NodeJS 分支。 由于内部对 Joyent 治理的冲突,io.js 被设计为具有独立技术委员会的开放治理替代方案。 与 NodeJS 不同,作者准备使用最新的 Google V8 JavaScript 引擎版本更新 io.js。

NodeJS 的技术细节

NodeJS 是一个 JavaScript 运行时环境,它在一个称为事件循环的循环中运行传入的请求。

  1. 线程: NodeJS 在一个单线程事件循环上运行,具有非阻塞 I/O 调用,允许它支持多个并发连接。 在利用观察者模式的每个请求之间分配单个线程的设计计划构建高度并发的应用程序,其中任何实现 I/O 的函数都应使用回调。
  2. 内部: NodeJS 在后台使用 libuv 来管理异步事件。 Libuv 可以被描述为 POSIX 和基于 Windows 的系统上的文件系统和网络功能的抽象层,包括 Unix、OSS on NonStop、Mac OS 和 Linux。
  3. V8: 它最初是为 Google Chrome 开发的 JavaScript 执行引擎。 然后,Google 在 2008 年开源了 V8。 它在 C++ 中指定。 V8 可以在运行时将 JavaScript 的源代码编译为自然机器代码。
  4. 包管理: npm 包管理器预安装在 NodeJS 的服务器平台上。 它使用 npm 注册表安装 NodeJS 的程序,管理其他 NodeJS 程序的安装和管理。
  5. 统一 API: NodeJS S 可以与浏览器以及支持 JSON 数据的站点(如 CouchDB、MongoDB 和 Postgres)以及 JSON 合并,以用于 JavaScript 的统一开发堆栈。
  6. 事件循环: NodeJS 可以向操作系统注册,因此操作系统会通知它问题和连接回调。 所有连接都是 NodeJS 运行时的狭窄堆分配。
  7. WebAssembly: NodeJS 与 WebAssembly 兼容,并且从 Node 14 开始支持实验性 WASI(WebAssembly 系统接口)。
  8. 本机绑定: NodeJS 提供了一种通过基于 C 的 API(称为 N-API)创建“插件”的方法,该 API 可用于使用 C/C++ 中指定的源代码生成可加载的 .node 模块。

Node.js 安装

使用以下命令安装 Node.js。


Software Nodejs 1

好吧,这是我们可以安装 Node.js 的方式,但它不会安装最新版本。 所以,我们有另一种安装方式。

使用 Curl 安装

使用此命令从 Node.js 的官方站点存储设置。


Software Nodejs 2

之后,执行以下命令。


Software Nodejs 3

验证 Node.js

它将打印已安装的 Node.js 版本。

运行 Node.js

使用此命令运行 Node.js

使用 console.log() 方法显示消息。

Software Nodejs 4

好吧,我们已经成功在 Ubuntu 上安装了 Node.js。 现在,我们可以制作应用程序了。