Ubuntu 下 Node.js 配置全流程

一 安装方式选择
在Ubuntu上配置Node.js,第一步也是关键一步,就是选对安装方法。不同的方法对应着不同的使用场景,选对了,后续工作事半功倍。
- 使用 APT 官方仓库:命令最简单,适合追求快速上手的场景。不过,官方仓库的版本更新往往不那么及时,可能不是你想要的“最新”。
- 使用 NodeSource APT 仓库:这个方法兼顾了易用性和版本新。你可以自由选择安装特定的LTS(长期支持)版本或最新版本,是很多开发者的折中之选。
- 使用 nvm(Node Version Manager):如果你需要在同一台机器上管理多个Node.js版本,比如为不同项目切换环境,那nvm就是最灵活、最推荐的工具。
- 使用 Docker:当你的项目对运行环境的一致性和可移植性要求极高时,用Docker容器来隔离Node.js环境,无疑是最佳选择。
二 安装与基础配置
选好了路,接下来就是具体执行。这里为你梳理了四种方式的详细步骤。
- APT 官方仓库(快速)
- 更新软件包索引并安装:
sudo apt update sudo apt install -y nodejs npm - 安装完成后,别忘了验证一下:
node -v npm -v
- 更新软件包索引并安装:
- NodeSource APT 仓库(指定版本)
- 首先,添加你想要的Node.js版本仓库(以18.x为例,可替换为16.x、20.x等):
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - - 然后执行安装:
sudo apt-get install -y nodejs - 同样,用命令验证版本:
node -v npm -v
- 首先,添加你想要的Node.js版本仓库(以18.x为例,可替换为16.x、20.x等):
- nvm(多版本管理,推荐开发)
- 安装nvm(注意脚本版本号可按需更新):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash - 让配置立即生效(根据你的shell选择):
source ~/.bashrc # 或 source ~/.profile - 现在,你可以自由安装和切换版本了:
nvm install --lts # 安装最新的LTS版本 nvm use --lts # 切换到LTS版本 nvm ls # 查看所有已安装版本 nvm alias default# 设置默认版本
- 安装nvm(注意脚本版本号可按需更新):
- Docker(环境隔离)
- 如果你想快速体验一个纯净的Node.js 18环境,并挂载当前目录进行开发,可以运行:
docker run -it --rm -v $(pwd):/usr/src/app -w /usr/src/app node:18 bash
- 如果你想快速体验一个纯净的Node.js 18环境,并挂载当前目录进行开发,可以运行:
三 npm 全局包目录与权限
安装好Node.js后,配置npm全局包是一个绕不开的话题。默认安装需要sudo权限,这不仅麻烦,还可能带来安全风险。一个更优雅的方案是:将全局包安装到你的用户目录下。
- 首先,创建一个专属的全局包目录:
mkdir -p ~/.npm-global - 接着,告诉npm使用这个目录作为前缀:
npm config set prefix ‘~/.npm-global’ - 然后,把这个目录下的可执行文件路径加入到系统的PATH环境变量中(以bash为例,如果用zsh,请修改~/.zshrc):
echo ‘export PATH=~/.npm-global/bin:$PATH’ >> ~/.bashrc source ~/.bashrc - 最后,验证一下配置是否生效:
npm config get prefix which npm
完成以上设置后,再安装像pm2、nodemon这样的全局工具,就再也不需要sudo了:
npm install -g pm2 nodemon
四 常用优化与常用命令
基础配置搞定,再来点“锦上添花”的优化和常用命令,让你的开发体验更顺畅。
- 使用国内镜像源加速(可选):如果你觉得从官方源下载包速度不理想,可以切换为国内镜像。
npm config set registry https://registry.npmmirror.com npm config get registry # 确认已切换 - 版本控制与切换(nvm):nvm的强大之处在于精细的版本管理。
nvm install 18.17.0 # 安装一个非常具体的版本 nvm use 18.17.0 # 在当前终端临时切换到此版本 nvm alias default 18.17.0 # 将此版本设为默认启动版本 nvm ls-remote --lts # 查看所有可远程安装的LTS版本 - 运行与守护:项目启动和管理。
node app.js # 最直接的启动方式 pm2 start app.js --name myapp # 使用pm2进行进程守护和开机自启(需先全局安装pm2)
五 常见问题排查
即使按照步骤操作,偶尔也可能遇到小麻烦。别担心,这里有几个常见问题的排查思路。
- 命令未找到:这通常是系统PATH环境变量没配置对。检查PATH是否包含了node和npm的所在目录(比如
~/.npm-global/bin或/usr/bin)。如果不对,记得在~/.bashrc或~/.zshrc中修正,并执行source命令重载配置。 - 多版本冲突:如果你混用了多种安装方式,很容易导致版本混乱。建议统一使用nvm来管理,通过
nvm use和nvm alias default为每个项目固定版本,一劳永逸。 - 权限错误:遇到安装全局包时的权限报错,请优先采用第三节的“用户级全局目录”方案,从根本上避免使用
sudo npm -g。 - 旧版本残留:在切换安装方式或重装前,如果担心旧版本干扰,可以先用
sudo apt remove --purge nodejs彻底清理,然后再安装新版本。
