当前位置: 首页 > article >正文

【Linux】Ubuntu Linux 系统——Node.js 开发环境

ℹ️大家好,我是练小杰,今天星期五了,同时也是2025年的情人节,今晚又是一个人的举个爪子!! 🙂
本文是有关Linux 操作系统中 Node.js 开发环境基础知识,后续我将添加更多相关知识噢,谢谢各位的支持🙏

前情回顾:【Linux 系统——Python集成开发环境】
Linux专栏:🔝 【Linux零基础开始】【Shell 脚本编程】 【文件权限专栏】

在这里插入图片描述

Node.js 开发环境

  • Node.js简介
    • 虚拟环境简介
  • 开发环境的组成
    • Node.js 运行时
    • 包管理器
      • npm(Node Package Manager)
      • yarn 包管理器
    • 代码编辑器或集成开发环境 (IDE)
    • 版本控制工具 (Git)
    • 调试工具
    • 构建工具
    • 测试框架
    • 持续集成/持续部署 (CI/CD) 工具
    • 容器化工具 (Docker)
    • 其他有用的工具
    • 环境变量和配置文件
    • 安全性工具
    • 文档和注释
  • 在Ubuntu系统上安装Node.js
    • 安装`Node.js`的方式
    • 使用二进制发行版安装`Node.js`
      • 1. 下载 Node.js 二进制包
      • 2. 解压下载的二进制包
      • 3. 移动解压后的文件到系统目录
      • 4. 配置环境变量
      • 5. 验证安装
    • 管理Node.js版本
    • 使用淘宝npm镜像
  • 开发Node.js应用程序
    • 编写程序
    • 测试程序
  • 调试Node.js应用程序

在这里插入图片描述

Node.js简介

  • 在Linux系统中,Node.js开发环境是指为了开发、运行和调试Node.js应用程序所需的一系列工具、库和配置。
  • 完整的Node.js开发环境由多个关键组件构成,这些组件协同工作,帮助开发者高效地开发、运行、测试和部署Node.js应用程序。

虚拟环境简介

  • Node.js(简称Node)是一个基于Chrome V8引擎的JavaScript运行环境。

  • Node.js是一个让JavaScript运行在服务器端的开发平台。

  • Node.js运行时环境包含执行用JavaScript编写的程序所需的一切。

  • Node.js 优点: 开发人员可以在客户端和服务器端编写JavaScript,打通了前、后端。

  • Node.js除了自己的标准类库(主要由二进制类库和核心模块组成)之外, 还可使用大量的第三方模块系统来实现代码的分享和重用,提高开发效率。

  • 对比其他的后端脚本语言,Node.js内置了处理网络请求和响应的函数库,所以不需要额外部署Web服务器。

开发环境的组成

一个在Linux系统上完整的Node.js开发环境由以下主要部分组成:

  1. Node.js 运行时:提供JavaScript运行环境。
  2. 包管理器 (npm 或 yarn):管理项目依赖。
  3. 代码编辑器或 IDE:编写和调试代码。
  4. 版本控制工具 (Git):管理代码版本和协作。
  5. 调试工具:调试应用程序。
  6. 构建工具:打包和优化代码。
  7. 测试框架:编写和运行测试。
  8. CI/CD 工具:自动化构建、测试和部署。
  9. 容器化工具 (Docker):创建和管理容器化环境。
  10. 其他工具 (nodemon, PM2):提升开发效率。
  11. 环境变量和配置文件:管理应用配置。
  12. 安全性工具:确保应用安全。
  13. 文档和注释工具:编写和维护文档。

Node.js 运行时

Node.js 是JavaScript的运行环境,允许你在服务器端执行JavaScript代码。Node.js基于Chrome V8引擎,具有非阻塞、事件驱动的架构,非常适合构建高性能的网络应用。

  • 安装方式:
    • 包管理器:如apt、dnf等,适用于大多数Linux发行版,但版本可能不是最新的。
    • nvm(Node Version Manager):允许你安装和管理多个Node.js版本,适合开发环境。
    • 从官网下载二进制文件:适用于需要特定版本的用户。

包管理器

npm(Node Package Manager)

默认随Node.js一起安装,用于安装、升级和卸载项目依赖。

  • 常用命令:
npm install <package-name>
npm uninstall <package-name>

yarn 包管理器

由Facebook开发,提供更快的安装速度和更稳定的依赖管理。

  • 安装:
npm install -g yarn
  • 常用命令:
yarn add <package-name>
yarn remove <package-name>

代码编辑器或集成开发环境 (IDE)

  • Visual Studio Code (VS Code): 免费、开源,拥有丰富的扩展和调试功能。安装VS Code可以使用Snap安装 或 使用Visual Studio Code安装包。

  • WebStorm:功能全面的JavaScript IDE,由JetBrains开发。可以非常方便地进行代码补全、调试、测试等。

  • Sublime Text:插件丰富,界面也比较美观,且具有简单的项目管理功能。

版本控制工具 (Git)

Git 用于代码版本控制和协作开发。使用GitHub、GitLab、Bitbucket等平台进行代码托管和团队协作。

  • 安装:
sudo apt update
sudo apt install git
  • 配置:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

调试工具

  • Node.js 内置调试器:使用 --inspect 标志启动调试模式。
node --inspect app.js
  • VS Code 调试器: 配置 launch.json 文件以支持 Node.js 调试。

  • Chrome DevTools: 通过 --inspect 标志,在Chrome浏览器中使用DevTools进行调试。

构建工具

  • Webpack: 用于打包、压缩和优化前端资源。

    npm install --save-dev webpack webpack-cli
    
  • Gulp、Grunt: 自动化任务运行器,用于执行常见的开发任务。

  • Babel:将现代JavaScript代码转译为兼容旧版本的代码。

    npm install --save-dev @babel/core @babel/cli @babel/preset-env
    

测试框架

  • Jest: 一个功能强大的JavaScript测试框架。

    npm install --save-dev jest
    
  • 另外,Mocha、Chai、AVA 等也是常用的测试框架。

持续集成/持续部署 (CI/CD) 工具

  • Jenkins:一个开源的自动化服务器,用于构建、测试和部署。

  • Travis CICircleCI:基于云的CI/CD服务,易于集成GitHub等平台。

容器化工具 (Docker)

Docker: 用于创建和管理容器化的开发环境,确保开发环境与生产环境的一致性。

  • docker安装命令

    sudo apt update
    sudo apt install docker.io
    sudo systemctl start docker
    sudo systemctl enable docker
    

Docker Compose: 管理多个容器的应用。

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

其他有用的工具

  • nodemon: 在开发过程中自动重启Node.js应用程序,方便实时调试。

    npm install -g nodemon
    
  • PM2:一个高级的进程管理器,用于生产环境的应用程序管理。

    npm install -g pm2
    

环境变量和配置文件

  • 环境变量:使用 .env 文件管理环境变量,配合 dotenv 包使用。
npm install dotenv
  • 配置文件: 使用 package.json 脚本和 config 包管理不同环境的配置。

安全性工具

  • 使用 npm audityarn audit 检查和修复依赖中的安全漏洞。

    npm audit
    
  • ⚠️使用 HTTPS协议:确保所有网络通信使用 HTTPS,保护数据传输安全。

文档和注释

  • JSDoc:为JavaScript代码生成文档。

    npm install --save-dev jsdoc
    
  • Markdown 编辑器:使用 Markdown 编写项目文档和README 文件。

在Ubuntu系统上安装Node.js

安装Node.js的方式

  • 源代码:适合各种版本的安装。
  • 二进制发行版:Node.js官方提供已编译好的二进制软件包,可直接下载使用。
  • 软件源安装:Debian/Ubuntu都有自己的软件源安装工具。
  • n模块: 可以用来安装并切换到相应的Node.js,前提是已安装包管理器npm
  • nvm:这是Node.js版本管理器,可用于安装和管理不同版本的Node.js。

使用二进制发行版安装Node.js

1. 下载 Node.js 二进制包

首先,访问 Node.js 官方下载页面 获取最新的二进制包链接。你也可以使用 wget 命令直接下载所需的版本。 以下示例用下载最新的 LTS(长期支持)版本举例:

#创建一个目录用于存放下载的文件(如果尚未存在)
mkdir -p ~/Downloads/nodejs

#进入下载目录
cd ~/Downloads/nodejs

#使用 wget 下载最新的 LTS 版本(请根据实际版本号调整 URL)
wget https://nodejs.org/dist/v18.17.1/node-v18.17.1-linux-x64.tar.xz

⚠️注意:请确保使用最新的版本号。你可以在【Node.js 官方下载页面】 找到最新的 LTS 版本链接。

2. 解压下载的二进制包

下载完成后,使用 tar 命令解压压缩包。

#解压下载的压缩包
tar -xf node-v18.17.1-linux-x64.tar.xz

3. 移动解压后的文件到系统目录

为了方便使用,可以将解压后的文件移动到 /usr/local 目录。

sudo mv node-v18.17.1-linux-x64 /usr/local/nodejs

4. 配置环境变量

为了让系统识别 nodenpm 命令,需要将 Node.js 的可执行文件路径添加到 PATH 环境变量中。

  • 编辑 ~/.bashrc(使用 Bash)或 ~/.zshrc(使用 Zsh)文件。
#使用 nano 编辑 ~/.bashrc
nano ~/.bashrc
  • 在文件末尾添加以下内容:
# Node.js
export NODEJS_HOME=/usr/local/nodejs
export PATH=$NODEJS_HOME/bin:$PATH

保存并退出编辑器(在 nano 中,按 Ctrl + O 保存,按 Ctrl + X 退出)。

  • 刷新环境变量配置文件:
source ~/.bashrc

5. 验证安装

最后,验证 Node.jsnpm 是否安装成功。

# 检查 Node.js 版本
node -v
# 输出示例: v18.17.1

# 检查 npm 版本
npm -v
# 输出示例: 9.6.7

至此,通过上面的步骤,我们可以在Linux系统中使用二进制发行版成功安装Node.js,并配置好环境变量以便于全局使用 nodenpm 命令。此外,使用 nvm 可以更方便地管理多个Node.js版本,适合开发环境中的不同项目需求。

管理Node.js版本

nvm是专门的Node版本管理器,我们可以利用nvm进行版本管理服务器。

  • 常用命令如下:
nvm current           #显示当前正在使用的版本
nvm ls                 #列出已在本机安装的版本,同时也会显示当前使用的版本
nvm install 8.0.0    #安装指定版本的Node 
nvm uninstall 8.0.0  #卸载指定版本的Node
nvm use 8.0            #指定当前要使用的版本(切换版本)
nvm run 6.10.3 app.js   #使用指定Node版本(6.10.3)运行指定程序(app.js) 
nvm alias default 8.1.0   #设置默认的Node版本
nvm alias default node    #将最新版本作为默认版本

使用淘宝npm镜像

  • 淘宝专门定制了cnpm命令行工具以代替npm,可以执行以下命令进行安装。
sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

安装完成后,可使用cnpm来安装和管理npm包。
cnpm的使用方法与npm相同,只需将npm改成cnpm

开发Node.js应用程序

下面以VS Code编辑器界面举例:

编写程序

const http = require('http');
const httpServer = http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World!s\n');
});
httpServer.listen(3000,function(){
    console.log('服务器正在3000端口上监听!');
});

测试程序

  • 运行Node.js程序
    在这里插入图片描述
  • 访问Web应用程序
    在这里插入图片描述

调试Node.js应用程序

  • 设置配置文件.vscode/launch.json
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/hello-world.js"
        }
    ]
}

  • 设置断点
  • 启动Node.js脚本的调试
    在这里插入图片描述
  • 根据需要设置监视器
  • 执行断点之后的语句

调试器支持3种单步执行方式:

  • Step Into<F11>键):单步执行,遇到子函数就进入并且继续单步执行。
  • Step Out<Shift>+<F11>组合键):当单步执行到子函数内时,使用它执行完子函数余下部分,并返回到上一层函数。
  • Step Over<F10>键):在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完毕并返回到下一条语句。
  • 要强制结束调试,按<Shift>+<F5>组合键。

今天的Linux系统的Node.js 开发环境内容到这里就结束了,下星期再见啦👋
ℹ️了解更多,主页【练小杰的CSDN】
⚠️若博客里的内容有问题,欢迎指正,我会及时修改!!!
下周同一时间再见,各位伙伴们🚴🏻‍♀️~~

在这里插入图片描述


http://www.kler.cn/a/546370.html

相关文章:

  • 利用IDEA将Java.class文件反编译为Java文件:原理、实践与深度解析
  • 如何查看 Linux 服务器的 MAC 地址:深入解析与实践指南
  • 《图解设计模式》笔记(九)避免浪费
  • 成为高级前端开发师需要掌握的技术
  • 模型过拟合怎么办
  • 力扣动态规划-30【算法学习day.124】
  • 查看notebook的jupyter token
  • 从Sora到有言:3D视频生成技术的突破与应用
  • WPF进阶 | 深入 WPF 依赖项属性:理解其强大功能与应用场景
  • 欧拉函数杂记
  • Python----PyQt开发(PyQt高级:手搓一个简单的记事本)
  • Easy系列PLC 线性变换功能块(模拟量相关功能块汇总)
  • Go语言协程Goroutine高级用法(一)
  • React源码解读
  • Linux中安装open-webui报sqlite版本低的解决办法
  • MySQL无法连接到本地localhost的解决办法2024.11.8
  • 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-23- 操作鼠标拖拽 - 番外篇(详细教程)
  • 报名丨Computer useVoice Agent :使用 TEN 搭建你的 Mac Assistant
  • error: conflicting types for ‘SSL_SESSION_get_master_key’
  • jmeter--参数化