温馨提示×

centos nodejs配置需要注意什么

小樊
42
2026-10-05 19:07:19
栏目: 编程语言

在 CentOS 上配置 Node.js 时,有几个关键点需要注意,避免常见坑:

1. 安装方式选择(很重要)

不推荐直接用 yum install nodejs(版本通常很旧)。

推荐方式:

  • NodeSource 仓库(最常用)
curl -fsSL https://rpm.nodesource.com/setup_18.x | bash -
yum install -y nodejs
  • NVM(多版本管理,适合开发)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 18

2. 权限问题(最常见坑)

不要用 root 直接跑 npm install -g,否则容易出权限错误。

建议:

  • 用普通用户运行 Node
  • 或配置 npm 全局目录:
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
export PATH=~/.npm-global/bin:$PATH

3 SELinux / 防火墙

  • 如果 Node 监听非 80/443 端口(如 3000),外部访问不了:
firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload
  • SELinux 一般不影响 Node,但用 80 端口时需注意权限

4 使用进程管理器

不要直接用 node app.js 跑生产服务。

推荐:

  • PM2
npm i -g pm2
pm2 start app.js
pm2 save
pm2 startup
  • 或用 systemd 管理

5 systemd 配置示例

[Unit]
Description=Node App
After=network.target

[Service]
User=nodeuser
WorkingDirectory=/var/www/app
ExecStart=/usr/bin/node app.js
Restart=always

[Install]
WantedBy=multi-user.target

6 内存与 Swap

Node 默认有内存限制(约 1.5–2G):

  • 大内存机器可调整:
node --max-old-space-size=4096 app.js
  • 小内存 VPS 建议开 Swap

7 版本与依赖

  • CentOS 7 已 EOL,尽量用 CentOS 8 / Stream / Rocky / Alma
  • 注意 glibc 版本是否满足 Node 要求

8 生产环境建议

  • 使用 Nginx 反代 Node
  • 开启 HTTPS
  • 日志集中管理(PM2 / journalctl)

如果你说明是 开发环境还是生产环境、CentOS 几、Node 用途,我可以给你更具体的配置方案。

0 踩