MK
摩柯社区 - 一个极简的技术知识社区
AI 面试

Node.js环境搭建与配置详解

2022-02-101.9k 阅读

1. 下载Node.js安装包

Node.js 官方网站为开发者提供了稳定版本和最新版本的安装包下载。稳定版本通常具有更好的兼容性和较少的已知问题,适合生产环境使用;最新版本则可能包含新特性和性能优化,但可能存在一些不稳定因素,更适合用于试验和测试新功能。

访问Node.js 官方网站 https://nodejs.org/en/download/,在下载页面可以看到针对不同操作系统的安装包,如Windows、macOS 和 Linux。

1.1 Windows系统下载

对于Windows用户,Node.js 提供了 .msi 格式的安装文件。根据你的系统是32位还是64位,选择对应的下载链接。通常,现代计算机大多是64位系统,因此建议下载64位版本以获得更好的性能。

1.2 macOS系统下载

macOS 用户可以下载 .pkg 格式的安装包。同样,需要根据系统的架构选择合适的版本,一般情况下,Intel 架构的Mac可以选择普通版本,而Apple Silicon(M1芯片等)架构的Mac需要下载专门适配的版本以获得最佳性能。

1.3 Linux系统下载

Linux系统的安装相对多样化。可以通过包管理器(如apt、yum等)进行安装,也可以从官方网站下载二进制文件手动安装。以Ubuntu为例,使用包管理器安装的步骤如下:

  1. 首先,更新系统软件包列表:
sudo apt update
  1. 然后,添加Node.js官方的APT源:
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
  1. 最后,安装Node.js:
sudo apt install -y nodejs

2. 安装Node.js

下载完成后,即可开始安装Node.js。

2.1 Windows系统安装

  1. 双击下载的 .msi 文件,启动安装向导。
  2. 在安装向导的欢迎界面,点击“Next”继续。
  3. 阅读并接受许可协议,点击“I Agree”。
  4. 选择安装路径,默认路径为 C:\Program Files\nodejs\。如果需要更改路径,点击“Change”选择合适的目录,然后点击“Next”。
  5. 选择要安装的组件,通常默认选项即可满足大多数开发需求,点击“Next”。
  6. 确认安装信息无误后,点击“Install”开始安装。安装过程可能需要一些时间,请耐心等待。
  7. 安装完成后,点击“Finish”退出安装向导。

2.2 macOS系统安装

  1. 双击下载的 .pkg 文件,启动安装向导。
  2. 按照安装向导的提示,点击“继续”,阅读并同意软件许可协议。
  3. 选择安装位置,通常选择默认位置即可,点击“安装”。
  4. 输入系统管理员密码(如果需要),以授权安装。
  5. 安装完成后,点击“关闭”。

2.3 Linux系统安装(以手动安装二进制文件为例)

  1. 解压下载的Node.js二进制文件压缩包,例如:
tar -xvf node-v14.17.0-linux-x64.tar.xz
  1. 将解压后的目录移动到合适的位置,如 /usr/local/nodejs
sudo mv node-v14.17.0-linux-x64 /usr/local/nodejs
  1. 配置环境变量,打开 .bashrc 文件(如果使用的是 zsh 则打开 .zshrc):
vim ~/.bashrc
  1. 在文件末尾添加以下内容:
export PATH=/usr/local/nodejs/bin:$PATH
  1. 使配置生效:
source ~/.bashrc

3. 验证安装

安装完成后,需要验证Node.js是否安装成功。

3.1 检查Node.js版本

打开终端(Windows用户打开命令提示符或PowerShell),输入以下命令:

node -v

如果安装成功,会输出版本号,例如 v14.17.0。这表明Node.js已经正确安装到系统中,并且系统能够识别该命令。

3.2 检查npm版本

Node.js自带了npm(Node Package Manager),用于管理项目依赖。同样在终端中输入以下命令检查npm版本:

npm -v

成功安装后会显示npm的版本号,如 6.14.13。npm是Node.js生态系统中极为重要的工具,它允许开发者方便地安装、更新和管理项目所需的各种第三方包。

4. 配置npm镜像源

npm默认的镜像源位于国外,在国内访问可能速度较慢,甚至出现下载失败的情况。因此,我们通常需要将npm的镜像源切换为国内的镜像源,如淘宝镜像源。

4.1 临时使用镜像源

可以在安装包时临时指定镜像源,例如安装 express 包:

npm install express --registry=https://registry.npm.taobao.org

这种方式只对当前的安装命令有效,如果下次还需要使用淘宝镜像源,需要再次指定。

4.2 永久修改镜像源

  1. 使用npm config命令修改镜像源:
npm config set registry https://registry.npm.taobao.org
  1. 验证镜像源是否修改成功:
npm config get registry

如果输出 https://registry.npm.taobao.org,则说明镜像源已成功修改为淘宝镜像源。

4.3 使用nrm管理镜像源

nrm(npm registry manager)是一个npm镜像源管理工具,可以方便地在多个镜像源之间切换。

  1. 全局安装nrm:
npm install -g nrm
  1. 查看可用的镜像源:
nrm ls

输出结果类似如下:

* npm ---- https://registry.npmjs.org/
  cnpm --- https://r.cnpmjs.org/
  taobao - https://registry.npm.taobao.org/
  ...

带有 * 标记的为当前使用的镜像源。

  1. 切换镜像源,例如切换到淘宝镜像源:
nrm use taobao

5. 配置Node.js开发环境

5.1 选择代码编辑器

选择一款适合的代码编辑器对于Node.js开发至关重要。常见的编辑器有Visual Studio Code、WebStorm等。

Visual Studio Code

  1. 轻量级且功能强大,拥有丰富的插件生态系统。
  2. 安装Node.js相关插件,如ESLint(用于代码规范检查)、Prettier(用于代码格式化)、Node.js Debug(用于调试Node.js应用)等。在VS Code的扩展商店中搜索相应插件并点击安装即可。

WebStorm

  1. 是一款智能的JavaScript集成开发环境(IDE),专为JavaScript和Node.js开发设计。
  2. 它具有强大的代码分析、自动完成和调试功能。WebStorm对Node.js项目提供了深度集成支持,能够方便地管理项目依赖、调试代码等。

5.2 创建Node.js项目

  1. 在终端中,切换到你想要创建项目的目录,例如:
cd ~/Documents
  1. 使用npm初始化项目:
npm init -y

-y 选项表示使用默认配置快速初始化项目,会在当前目录生成一个 package.json 文件。package.json 文件是Node.js项目的核心配置文件,用于记录项目的基本信息、依赖关系、脚本命令等。

5.3 安装项目依赖

假设我们要创建一个基于Express框架的Web应用,首先需要安装Express。在项目目录下执行以下命令:

npm install express

这会将Express及其依赖安装到项目的 node_modules 目录中,并在 package.json 文件的 dependencies 字段中记录相关信息。

6. 环境变量配置

环境变量在Node.js开发中起着重要作用,它可以让我们在不同的环境(开发、测试、生产)中灵活配置应用程序的参数。

6.1 系统环境变量

在系统层面配置环境变量可以让Node.js应用获取到系统级别的参数。

Windows系统

  1. 右键点击“此电脑”,选择“属性”。
  2. 在弹出的窗口中点击“高级系统设置”。
  3. 在“系统属性”窗口的“高级”选项卡中,点击“环境变量”。
  4. 在“系统变量”中,可以新建或编辑环境变量。例如,新建一个名为 NODE_ENV 的环境变量,值为 development 用于开发环境。

macOS系统

  1. 打开终端,编辑 .bashrc 文件(如果使用zsh则编辑 .zshrc):
vim ~/.bashrc
  1. 在文件中添加或修改环境变量,例如:
export NODE_ENV=development
  1. 使配置生效:
source ~/.bashrc

Linux系统: 与macOS类似,编辑 .bashrc 文件添加环境变量,然后使用 source 命令使配置生效。

6.2 Node.js应用内环境变量

在Node.js应用中,可以通过 process.env 对象来访问环境变量。例如,在一个简单的Node.js脚本中:

console.log(process.env.NODE_ENV);

这段代码会输出系统环境变量中 NODE_ENV 的值。在实际应用中,可以根据 NODE_ENV 的值来加载不同的配置文件,如在开发环境使用本地数据库,在生产环境使用远程数据库。

7. 高级配置

7.1 使用nvm管理Node.js版本

nvm(Node Version Manager)允许开发者在同一台机器上安装和管理多个Node.js版本,方便在不同项目中使用不同的Node.js版本。

  1. 安装nvm:
    • Linux和macOS:可以使用以下命令安装:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
  1. 安装完成后,关闭并重新打开终端,使nvm生效。
  2. 列出可安装的Node.js版本:
nvm list available
  1. 安装指定版本的Node.js,例如安装v14.17.0:
nvm install 14.17.0
  1. 使用指定版本的Node.js:
nvm use 14.17.0
  1. 设置默认的Node.js版本:
nvm alias default 14.17.0

7.2 配置Node.js的缓存目录

npm安装包时会将下载的包缓存到本地,默认的缓存目录可能不太方便管理,我们可以修改缓存目录。

  1. 创建一个新的缓存目录,例如在用户主目录下创建 npm-cache 目录:
mkdir ~/npm-cache
  1. 使用npm config命令修改缓存目录:
npm config set cache ~/npm-cache
  1. 验证缓存目录是否修改成功:
npm config get cache

如果输出为新设置的缓存目录路径,则说明修改成功。

7.3 配置Node.js的代理

在一些网络环境中,可能需要通过代理才能访问外部资源。可以通过npm配置代理,也可以在Node.js应用中配置代理。

npm配置代理

  1. 设置http代理:
npm config set proxy http://proxy.example.com:8080
  1. 设置https代理:
npm config set https-proxy http://proxy.example.com:8080
  1. 如果需要取消代理,可以使用以下命令:
npm config delete proxy
npm config delete https-proxy

Node.js应用内配置代理: 在Node.js应用中使用 http-proxy-agenthttps-proxy-agent 模块来配置代理。例如,使用 http-proxy-agent 模块发送HTTP请求时设置代理:

const http = require('http');
const HttpProxyAgent = require('http-proxy-agent');

const proxy = 'http://proxy.example.com:8080';
const agent = new HttpProxyAgent(proxy);

const options = {
  hostname: 'example.com',
  port: 80,
  path: '/',
  method: 'GET',
  agent: agent
};

const req = http.request(options, (res) => {
  res.on('data', (chunk) => {
    console.log('BODY: ', chunk.toString());
  });
  res.on('end', () => {
    console.log('No more data in response.');
  });
});

req.end();

通过以上详细的步骤和配置,开发者可以全面搭建和配置好Node.js开发环境,为后续的Node.js项目开发奠定坚实的基础。无论是基础的安装、镜像源配置,还是高级的版本管理、代理配置等,都能够满足不同开发场景和需求。