Node.js环境安装可以采用nvm或者fnm版本管理器安装,利于多个Node版本的使用。
nvm的github地址:https://github.com/creationix/nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
但是受限于国外网速,上述官方安装方法往往下载速度较慢或者无法下载。因此可以采用如下的国内码云安装方法。
Gitee(码云)会将Github上的部分常见项目源代码库拉到自己的网站上,因此可以在Gitee极速下载网站上找到需要的源代码库。
Gitee极速下载网址:https://gitee.com/mirrors
在搜索出的nvm代码库中找到相应的地址,利用Git命令下载源代码库。
```
利用git clone命令将代码下载到用户目录下的 .nvm文件夹内。
git clone https://gitee.com/mirrors/nvm.git .nvm
Cloning into '.nvm'...
remote: Enumerating objects: 8693, done.
remote: Counting objects: 100% (382/382), done.
remote: Compressing objects: 100% (358/358), done.
remote: Total 8693 (delta 240), reused 15 (delta 15), pack-reused 8311
Receiving objects: 100% (8693/8693), 2.58 MiB | 587.00 KiB/s, done.
Resolving deltas: 100% (5595/5595), done.
进入 .nvm目录后,通过 bash install.sh 命令安装并更新nvm。
(base) zhou@ZHOU-PC:~$ cd .nvm
(base) zhou@ZHOU-PC:~/.nvm$ bash install.sh
=> nvm is already installed in /home/zhou/.nvm, trying to update using git
=> * (HEAD detached at FETCH_HEAD)
master
=> Compressing and cleaning up git repository
=> Appending nvm source string to /home/zhou/.bashrc
=> Appending bash_completion source string to /home/zhou/.bashrc
/usr/bin/env: ‘bash\r’: No such file or directory
=> Close and reopen your terminal to start using nvm or run the following to use it now:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
上述命令也同时会添加NVM_DIR环境变量至 .bashrc中,通过 source ~/.bashrc使命令生效,后面还会用到此处进行相关配置。
通过 nvm -v 查看 nvm版本号以确认nvm已经正确安装。
nvm -v
0.39.1
接着就可以利用NVM安装Node.js环境了。
但是NVM安装Node时仍然使用的是国外的网站,下载速度较慢。安装源配置位于**.nvm目录下的nvm.sh**中关于上述两个的环境配置,可以看到安装源位于 https://nodejs.org/dist。
# nvm.sh中的环境变量设置
nvm_get_mirror() {
case "${1}-${2}" in
node-std) nvm_echo "${NVM_NODEJS_ORG_MIRROR:-https://nodejs.org/dist}" ;;
iojs-std) nvm_echo "${NVM_IOJS_ORG_MIRROR:-https://iojs.org/dist}" ;;
*)
nvm_err 'unknown type of node.js or io.js release'
return 1
;;
esac
}
这时可以临时修改NVM安装源为国内源(npmmirror 中国镜像站,https://npmmirror.com/)
以前经常用的淘宝NPM网站已经改版为npmmirror 中国镜像站,后面的镜像源也更改为npmmirror 中国镜像站。
在shell中输入如下命令,临时设置NVM的npmmirror中国安装源:
export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node
export NVM_IOJS_ORG_MIRROR=https://npmmirror.com/mirrors/iojs
此命令只在当前终端环境开启有效,之后就可以按照 1.3 节 ∗ ∗ 命 令 ∗ ∗ n v m i n s t a l l − − l t s ∗ ∗ 安 装 N o d e j s 了 。 终 端 重 新 打 开 之 后 失 效 , 失 效 后 若 想 继 续 使 用 , 可 以 重 新 输 入 此 命 令 。 3.3 永 久 设 置 n v m 安 装 源 ( 推 荐 ) 在 终 端 编 辑 . b a s h r c 文 件 , 首 先 用 命 令 ∗ ∗ s u d o v i / . b a s h r c ∗ ∗ 打 开 . b a s h r c , 并 在 其 中 添 加 如 下 命 令 , 注 意 命 令 添 加 的 位 置 位 于 ∗ ∗ e x p o r t N V M D I R = " 1.3节**命令 **nvm install --lts** 安装Nodejs了。终端重新打开之后失效,失效后若想继续使用,可以重新输入此命令。 3.3 永久设置nvm安装源(推荐) 在终端编辑.bashrc文件,首先用命令**sudo vi ~/.bashrc**打开.bashrc,并在其中添加如下命令,注意命令添加的位置位于 **export NVM_DIR=" 1.3节∗∗命令∗∗nvminstall−−lts∗∗安装Nodejs了。终端重新打开之后失效,失效后若想继续使用,可以重新输入此命令。3.3永久设置nvm安装源(推荐)在终端编辑.bashrc文件,首先用命令∗∗sudovi /.bashrc∗∗打开.bashrc,并在其中添加如下命令,注意命令添加的位置位于∗∗exportNVMDIR="HOME/.nvm" 之下:
export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node
export NVM_IOJS_ORG_MIRROR=https://npmmirror.com/mirrors/iojs
保存退出,使用命令source ~/.bashrc使上述修改生效。
这时就可以用国内源安装Node.js,直接用 nvm install --lts 安装Node.js的长期支持环境(最新),包括node和npm都会被安装上。如果想自己选择安装的Node.js环境版本,可以通过 node ls-remote --lts在线查询可以安装的长期支持版本,然后安装指定长期支持版本。
# 查询可以安装的长期支持版本
nvm ls-remote --lts
.......
v14.17.4 (LTS: Fermium)
v14.17.5 (LTS: Fermium)
v14.17.6 (LTS: Fermium)
v14.18.0 (LTS: Fermium)
v14.18.1 (LTS: Fermium)
v14.18.2 (LTS: Fermium)
v14.18.3 (LTS: Fermium)
v14.19.0 (Latest LTS: Fermium)
v16.13.0 (LTS: Gallium)
v16.13.1 (LTS: Gallium)
v16.13.2 (LTS: Gallium)
v16.14.0 (Latest LTS: Gallium)
nvm install --lts
Installing latest LTS version.
Downloading and installing node v16.14.0...
Downloading https://npmmirror.com/mirrors/node/v16.14.0/node-v16.14.0-linux-x64.tar.xz...
###################################################################################### 100.0%
###################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Creating default alias: default -> lts/* (-> v16.14.0)
安装完Node.js环境后,在有多个Node.js环境的情况下,可以通过nvm use 的方式明确使用哪个版本的Node.js环境。
nvm use --lts
Now using node v16.14.0 (npm v8.3.1)
在多个Node.js版本环境存在的情况下,可以通过node -v 和npm -v命令查看当前使用的node和npm版本。
node -v
v16.14.0
npm -v
8.3.1
nvm -v
0.39.1
Fast Node Manager(fnm)是Node版本管理器之一。内置 Rust,用于 Node.js 多发布版本的快速便捷管理工具。fnm 可以跨版本支持macOS、Windows 以及 Linux,以及一系列衍生命令(Bash, Zsh, Fish, PowerShell, Windows 命令行),它以“脑速”编译,并兼容性支持 .node-version 和 .nvmrc 文件。
fnm官方安装地址 :https://nodejs.org/zh-cn/download/package-manager/#fnm
fnmGithub地址:https://github.com/Schniz/fnm
使用如下命令安装fnm
curl -fsSL https://fnm.vercel.app/install | bash
众多周知的原因,github下载速度较慢,经常导致安装不成功。
https://github.com/Schniz/fnm/releases 下载需要的源码
源码下载完成之后解压,在用户的Home目录下新建文件目录**.fnm**,将解压的源码文件拷贝到.fnm文件夹下
zhou@ZHOU-PC:~/.fnm$ ls -la
total 6872
drwxr-xr-x 2 zhou zhou 4096 Apr 26 22:05 .
drwxr-xr-x 11 zhou zhou 4096 Apr 26 22:05 ..
-rwxr--r-- 1 zhou zhou 7028576 Feb 16 08:21 fnm
# fnm
export PATH=/home/zhou/.fnm:$PATH
eval "`fnm env`"
执行source ~/.bashrc命令或者关闭窗口后重新打开新窗口,使得上述配置启用。
zhou@ZHOU-PC:~$ fnm env
export PATH="/home/zhou/.local/state/fnm_multishells/597_1650983068281/bin":$PATH
export FNM_MULTISHELL_PATH="/home/zhou/.local/state/fnm_multishells/597_1650983068281"
export FNM_VERSION_FILE_STRATEGY="local"
export FNM_DIR="/home/zhou/.fnm"
export FNM_LOGLEVEL="info"
export FNM_NODE_DIST_MIRROR="https://nodejs.org/dist"
export FNM_ARCH="x64"
在.bashrc文件中添加相应配置,如下三个配置选择其中一个即可
# 清华大学开源镜像站
export FNM_NODE_DIST_MIRROR=https://mirrors.tuna.tsinghua.edu.cn/nodejs-release/
# npmmirror 中国镜像站
export FNM_NODE_DIST_MIRROR=https://npmmirror.com/mirrors/node
# npm腾讯镜像站
export FNM_NODE_DIST_MIRROR=https://npmmirror.com/mirrors/node
执行source ~/.bashrc命令或者关闭窗口后重新打开新窗口,使得上述配置启用。
# 安装最新的长期支持版本
zhou@ZHOU-PC:~$ fnm install --lts
Installing Node v16.14.2 (x64)
#还可以在安装之前先查询可以安装的版本
fnm list-remote
安装完成后会在**.fnm目录下生成node-versions**文件,里面包含下载的最新的长期支持版本或者指定版本的Node.js。
默认npm安装软件包仍然采用的是国外官方源,网速堪忧,因此同样可以将源更改为国内npmmirror 中国镜像站或者npm腾讯镜像站。
npm国内源(npmmirror 中国镜像站,二选一)
npm config set registry https://registry.npmmirror.com/
npm国内源(npm腾讯镜像站 二选一)
npm config set registry http://mirrors.cloud.tencent.com/npm/
上述命令会在用户目录下的 .npmrc文件中加入如下语句:
registry=https://registry.npmmirror.com/
registry=http://mirrors.cloud.tencent.com/npm/
pnpm 是通过使用符号链接的方式仅将项目的直接依赖项添加到 node_modules 的根目录下,实现源码可以访问本不属于当前项目所设定的依赖包。
# pnpm安装
npm install -g pnpm
added 1 package in 902msadded 1 package in 902ms
# pnpm 设置国内源
pnpm config set registry https://registry.npmmirror.com/
上述命令会在用户目录下的 .npmrc文件中加入如下语句:
registry=https://registry.npmmirror.com/
npmmirror 中国镜像站
开源镜像: https://npmmirror.com/mirrors/
Node.js 镜像: https://npmmirror.com/mirrors/node/
alinode 镜像: https://npmmirror.com/mirrors/alinode/
ChromeDriver 镜像: https://npmmirror.com/mirrors/chromedriver/
OperaDriver 镜像: https://npmmirror.com/mirrors/operadriver/
Selenium 镜像: https://npmmirror.com/mirrors/selenium/
electron 镜像: https://npmmirror.com/mirrors/electron/