温馨提示×

ubuntu nodejs环境如何配置

小樊
41
2025-12-29 20:36:54
栏目: 编程语言

Ubuntu Node.js 环境配置指南

一 安装方式选择

  • 使用 NodeSource 仓库(APT):适合服务器或需要特定版本的场景,命令简洁、系统级安装。
  • 使用 NVM(Node Version Manager):适合开发者在同一台机器上管理多个 Node.js 版本,切换灵活。
  • 使用 Ubuntu 官方仓库:最省事,但版本通常较旧,生产不建议直接使用。
    下表对比要点:
  • 版本可控性:NVM(最灵活) > NodeSource(可控) > 官方仓库(较旧)
  • 多版本切换:NVM(原生支持) | NodeSource(需重装) | 官方仓库(不支持)
  • 系统级 vs 用户级:NodeSource(系统级) | NVM(用户级) | 官方仓库(系统级)
  • 典型场景:服务器/稳定交付(NodeSource) | 开发/多项目(NVM) | 快速试用(官方仓库)

二 安装步骤

  • 方式一(推荐)NodeSource APT 安装指定或 LTS 版本
    1. 更新索引并添加仓库(以 LTS 为例):
      sudo apt update
      curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
      如需 18.x/20.x,将 setup_lts.x 替换为 setup_18.x/setup_20.x
    2. 安装:sudo apt install -y nodejs(包含 nodenpm
    3. 验证:node -v;npm -v
  • 方式二 NVM 安装与多版本管理
    1. 安装 NVM:
      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
      source ~/.bashrc(如使用 zsh 则 source ~/.zshrc)
    2. 安装与切换:
      nvm install --lts(或 nvm install 18.16.1)
      nvm use --lts(或 nvm use 18.16.1)
      nvm alias default 18.16.1(设置默认版本)
    3. 验证:node -v;npm -v
  • 方式三 Ubuntu 官方仓库(仅建议快速试用)
    sudo apt update && sudo apt install -y nodejs npm
    注意:官方仓库版本可能较旧,生产环境不推荐。

三 配置 npm 与全局包路径

  • 避免每次使用 sudo 安装全局包,建议配置用户级全局目录:
    1. 创建目录:mkdir -p ~/.npm-global
    2. 配置前缀:npm config set prefix ‘~/.npm-global’
    3. 写入 PATH(针对 bash):echo ‘export PATH=~/.npm-global/bin:$PATH’ >> ~/.bashrc && source ~/.bashrc
      如使用 zsh:echo ‘export PATH=~/.npm-global/bin:$PATH’ >> ~/.zshrc && source ~/.zshrc
    4. 验证:npm config get prefix;which npm
  • 国内网络可换源加速:
    npm config set registry https://registry.npmmirror.com
    npm config get registry

四 快速验证与第一个应用

  • 创建项目并启动服务:
    mkdir myapp && cd myapp
    npm init -y
    npm install express
    cat > app.js <<‘EOF’
    const express = require(‘express’);
    const app = express();
    app.get(‘/’, (req, res) => res.send(‘Hello from Ubuntu & Node.js’));
    app.listen(3000, () => console.log(‘Server running on http://localhost:3000’));
    EOF
    node app.js
  • 使用 PM2 守护进程:
    npm install -g pm2
    pm2 start app.js --name “myapp”
    pm2 list
    pm2 startup(按提示完成开机自启)
    pm2 save
  • 服务器外部访问(云服务器示例):
    在云厂商控制台安全组放行 TCP 3000;本机防火墙(如 ufw/firewalld)同样需放行。
    验证:curl http://<公网IP>:3000 或浏览器访问。

五 常见问题与最佳实践

  • 命令未找到(command not found):安装后执行 source ~/.bashrc 或重新登录;如使用 zsh 则 source ~/.zshrc。
  • 多版本并存与切换:优先使用 NVM;必要时用 nvm alias default 设置默认版本。
  • 避免使用 root 运行应用:以普通用户运行,配合 PM2 或 systemd 管理进程。
  • 端口与防火墙:确保云安全组与系统防火墙均放行应用端口(如 3000)。
  • 版本选择:生产环境建议使用 LTS(如 18.x、20.x),兼顾稳定性与安全性。

0