温馨提示×

怎么部署Ubuntu Nodejs

小樊
41
2026-07-23 13:42:38
栏目: 编程语言

Ubuntu 上部署 Node.js 常见有几种方式,下面从最常用、最推荐进阶方案给你一个完整说明,适合服务器/生产环境。


一、推荐方式(✅ 生产环境):使用 NodeSource 安装指定版本

1️⃣ 更新系统

sudo apt update
sudo apt upgrade -y

2️⃣ 安装依赖

sudo apt install -y curl

3️⃣ 添加 NodeSource 源(以 Node.js 20 为例)

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -

4️⃣ 安装 Node.js

sudo apt install -y nodejs

5️⃣ 验证安装

node -v
npm -v

✅ 优点:

  • 版本新
  • 稳定
  • 适合生产环境

二、快速方式(不推荐生产):Ubuntu 自带仓库

sudo apt update
sudo apt install -y nodejs npm

⚠️ 缺点:

  • 版本较旧
  • 不适合现代项目

三、进阶方式(✅ 强烈推荐):使用 NVM(Node Version Manager)

适合开发 / 多版本切换

1️⃣ 安装 NVM

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

重新加载 shell:

source ~/.bashrc

2️⃣ 安装 Node.js

nvm install 20
nvm use 20

3️⃣ 设置默认版本

nvm alias default 20

✅ 优点:

  • 多版本共存
  • 不影响系统环境

四、生产部署常见流程(示例)

1️⃣ 上传项目

git clone https://github.com/your/project.git
cd project

2️⃣ 安装依赖

npm install --production

3️⃣ 启动项目

node app.js

五、使用 PM2(✅ 推荐生产进程管理)

1️⃣ 安装 PM2

npm install -g pm2

2️⃣ 启动应用

pm2 start app.js --name my-app

3️⃣ 设置开机自启

pm2 startup
pm2 save

✅ PM2 可保证:

  • 崩溃自动重启
  • 服务器重启自动运行

六、Ubuntu + Nginx + Node.js(常见架构)

用户 → Nginx (80) → Node.js (3000)

示例 Nginx 配置

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
    }
}

七、推荐组合(✅ 最佳实践)

场景 推荐方案
生产环境 NodeSource + PM2
开发环境 NVM
Web 服务 Node.js + Nginx
高可用 PM2 + Nginx

八、常见问题

❓ npm 权限问题

sudo chown -R $USER:$USER ~/.npm

❓ 查看 Node 路径

which node

如果你愿意,可以告诉我:

  • ✅ Ubuntu 版本(20.04 / 22.04 / 24.04)
  • ✅ 是否用于生产环境
  • ✅ 是否搭配 Nginx / Docker

我可以给你定制部署方案

0