前言
写文章写得手疼了,大家多多关注点赞收藏评论啊!通过前面几篇文章,我们顺利的 安装了 ubuntu server 服务器,并且配置好了 ssh 免密登录服务器,安装好了 服务器常用软件安装, 并且 配置好了 zsh 和 vim 接下来,我们就要配置我们的服务环境了。作为一台服务器,如果它不提供服务,那它干了个啥对吧。。。
作为 NodeJS 的服务器,首先要做的就是安装 NodeJS,但是,我们也知道,以我们前端日新月异的发展速度,今天你的代码还是跑得贼欢唱,过两天, NodeJS 版本一升级,可能就挂了。
那么,作为服务器,肯定不能只运行一个版本的 Node,也因此,我们就需要 Node 版本管理器。
目前,我个人推荐 nvm 作为我们的 Node 版本管理器。
安装 NVM
作为 Node 版本管理器,是有众多的选择的。
但是,最被广泛使用和接受的,就是 NVM 了。
nvm 官方网站以及仓库 https://github.com/nvm-sh/nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
上面是安装命令,我们在服务器上运行,运行结果如下:
我安装之后,输入 nvm -v 查看是否安装完成,结果告诉我没有找到命令。
于是,我查看了一下 .zshrc 文件,看上图中提示需要添加的代码,有没有添加到配置文件中,看了一下,是有的。
那么,问题就出在了配置文件没有生效,于是,我运行 . ~/.zshrc 命令,使配置文件生效,再次输入 nvm -v 就可以看到出现版本号,就说明,NVM 已经安装成功了。
source ~/.zshrc 命令的作用是让 zsh 的配置文件立即生效,它的简写形式就是我上面的 . ~/.zshrc 这种用法。如果你用的是 bash 终端解释器,那么,其命令应该是 . ~/.bashrc
nvm 常用命令说明
nvm install | 安装指定 Node.js 版本(如 nvm install 18.17.1) |
nvm use | 切换到指定版本(需已安装) |
nvm ls | 查看已安装的所有版本(当前使用版本高亮显示) |
nvm ls-remote | 列出所有可安装的远程版本(加 –lts 仅显示长期支持版) |
nvm alias default | 设置默认版本(新终端自动生效) |
nvm uninstall | 卸载指定版本 |
nvm current | 显示当前使用的 Node.js 版本 |
nvm which | 显示某版本的 Node.js 安装路径 |
安装 node V 22
OK,通过上面的表格,我们大概掌握了 nvm 的使用了,接下来,我们就开始安装 Node
# 查看受到长期支持的版本
nvm ls-remote –lts
# 安装 22.16.0 版本
nvm install 22.16.0
设置 npm 源为阿里源
默认情况下,我们安装依赖,是走的 npm 的官方源。官方源很好,只是在国内的速度比较慢,因此,我们一般情况下,将源设置为阿里源。在某些情况下,需要使用官方源,则再设置回去即可。
# 将 npm 源设置为阿里源
npm config set registry https://registry.npmmirror.com
# 将 npm 源设置为官方源
npm config set registry https://registry.npmjs.org
配置好源以后,我们以后项目的安装速度会溜溜的快哦!
安装 pnpm 管理包
通过上面,我们已经安装好了 NodeJS V22 版本了。同时,也已经安装了 node 自带的包管理器 npm 工具。那么当前, pnpm 作为一个替代 npm 的包管理器,被大家广受好评,因此,咱们这边,也安装上 pnpm 管理包工具。
pnpm 官方网站:https://pnpm.io/zh/
📦 核心功能对比
存储机制 | 每个项目独立存储依赖,重复占用空间 | 硬链接+符号链接,全局集中存储依赖 |
安装速度 | 较慢(需完整下载解压) | 更快(利用全局缓存链接) |
磁盘占用 | 高(相同依赖重复存储) | 节省50%+空间(多项目共享) |
依赖结构 | 平铺嵌套,易冲突 | 扁平化+符号链接,隔离清晰 |
安全性 | 可能存在幽灵依赖 | 沙盒隔离,安全性更高 |
Monorepo支持 | 需配合lerna等工具 | 原生高效支持 |
兼容性 | 生态最广泛 | 兼容npm但少数插件可能不适配 |
⚖️ 优缺点总结
npm优势
npm劣势
- 磁盘空间浪费严重
- 大型项目安装慢
- 平铺结构易导致幽灵依赖
pnpm优势
pnpm劣势
- 需要适应链接机制
- 极少数历史插件不兼容
💡 选型建议
- 选择pnpm:适合依赖复杂、磁盘敏感或Monorepo项目
- 选择npm:适合小型项目或需要最大兼容性时
OK,下面我们来安装 pnpm,因为我们已经安装了 Node,所以可以用 npm -g 命令安装到全局。
npm install -g pnpm@latest-10
小结
本来计划在这篇文章中继续讲解安装 Nginx 的,但是看看文章已经挺长的了,下一章再讲吧。
我计划写一系列的文章来完善这个主题,配置 Ubuntu Server 的 NodeJS 服务器,目前已经完成五篇,大家喜欢的话,一定要多多点赞收藏,评论留言,关注我哦!谢谢大家!
大概目录如下:
《PVE虚拟机 安装 Ubuntu Server 系统》 《SSH 配置,让我们远程连上虚拟机》 《服务器软件更新,以及常用软件安装》 《配置服务器终端环境 zsh , oh my zsh, vim》 《NVM 安装 NodeJS环境,以及 PNPM 的安装》 《Nginx 和 Mysql 的安装和配置》 《pm2 服务端进程管理的使用和配置》
评论前必须登录!
注册