在 Ubuntu 上配置 Node.js,主要要注意版本选择、安装方式、权限、环境变量和服务管理这几块。下面按常见坑和最佳实践给你梳理一下:
Ubuntu 自带的 apt install nodejs 版本通常很老(比如 12.x、14.x),不满足现代项目需求。
推荐方式:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
验证:
node -v
npm -v
适合多版本切换:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 20
nvm use 20
✅ 优点:不影响系统、可多版本共存
直接用 sudo npm install -g 容易出权限问题。
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
加到 ~/.bashrc:
export PATH=~/.npm-global/bin:$PATH
sudo ufw allow 3000
npm install -g pm2
pm2 start app.js
pm2 startup
pm2 save
示例 /etc/systemd/system/nodeapp.service:
[Unit]
Description=Node App
After=network.target
[Service]
User=ubuntu
WorkingDirectory=/home/ubuntu/app
ExecStart=/usr/bin/node app.js
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl enable nodeapp
sudo systemctl start nodeapp
❌ apt 装的老版本 node
❌ 用 root 跑 npm 导致权限乱
❌ 没开防火墙/安全组
❌ 直接用 node app.js 跑生产
❌ 忘了 npm install 就启动
如果你能说下是开发用还是服务器部署、Ubuntu 版本(20.04 / 22.04 / 24.04),我可以直接给你一套最合适的最小配置命令。