经过多年发展,Nodejs 版本管理工具层出不穷,比如 nvm、nvs、fnm、volta 等等,都是各具特色的工具。

比如在 Windows 系统上就是使用 nvm-windows 来切换 Nodejs 版本,简单方便。

在 Linux 系统上,软件仓库一般会有一个比较老的 Nodejs 版本,可以直接运行命令 apt install nodejs 安装使用。比如在 ubuntu 20.04 系统中,软件仓库默认集成是 Nodejs 10.x 的版本。

我现在想要在 ubuntu 服务器中部署一个持续集成工具,能帮我自动给前端项目打包,前端项目目前使用的 Nodejs 是 16.x 版本。

之前写过一篇介绍 ubuntu 安装 Nodejs 的文章:ubuntu 18.04 安装 nodejs 最新版、指定版 12.x 14.x。文章里面的内容好像过时了,而且操作起来不够简单。

那么我现在要给 ubuntu 20.04 服务器安装 Nodejs 16.x,经过研究后,我觉得使用 fnm 来安装 Nodejs 是比较简便的方式。

安装 fnm

fnm 是使用 Rust 语言开发的一个 Nodejs 版本管理器。

fnm 官方下载地址:https://github.com/Schniz/fnm/releases

我们下载最新的 Linux 平台二进制压缩包:fnm-linux.zip,解压后会得到一个 fnm 程序文件。

接着在本地打开 Git Bash 终端,把 fnm 上传到 ubuntu 服务器:

1
scp fnm root@111.111.111.111:/usr/local/bin/

注意,为了避免权限问题,这里要用 root 账号上传到 /usr/local/bin 目录。

上传完成后,登录 ubuntu 服务器,切换到 /usr/local/bin 目录,给 fnm 授予执行权限:

1
2
3
4
5
# 切换目录
cd /usr/local/bin

# 授予执行权限
chmod +x fnm

接着切换到 /root 目录,在 .bashrc 文件的最后增加一行:

1
eval "$(fnm env --use-on-cd --shell bash)"

再执行命令重载一下配置:

1
source /root/.bashrc

输入命令验证一下:

1
fnm --version

如果打印出版本信息,则 fnm 已经部署好了。

安装 Nodejs

现在我们通过 fnm 安装 Nodejs。

我这里想安装 Nodejs v16.20.0 版本,则执行如下命令:

1
fnm install 16.20.0

速度很快,一会就安装好了。

接着运行如下命令,就可以看到安装好的 Node 了:

1
fnm list

默认情况下,node 和 npm 都会一起安装。

我这里要用 pnpm,所以还需要执行以下命令安装 pnpm:

1
npm i -g pnpm

至此,ubuntu 服务器就安装好 Nodejs 比较新的版本了。