温馨提示×

centos运行nodejs如何配置

小樊
41
2026-09-18 00:08:14
栏目: 编程语言

CentOS 上运行 Node.js,通常有以下几种常见方式,从最简单生产级配置。下面按推荐顺序说明。


一、最简单:用 NodeSource 安装(推荐)

1. 更新系统

sudo yum update -y

2. 安装依赖

sudo yum install -y curl gcc-c++ make

3. 添加 NodeSource 源(以 Node 18 为例)

curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -

4. 安装 Node.js

sudo yum install -y nodejs

5. 验证

node -v
npm -v

二、使用 NVM(适合多版本切换)

1. 安装 NVM

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

2. 重新加载环境

source ~/.bashrc

3. 安装 Node

nvm install 18
nvm use 18

✅ 适合开发环境 / 多项目


三、运行 Node 项目(基础方式)

cd your-project
npm install
node app.js

⚠️ 这样关闭终端就会停止


四、生产环境推荐:用 PM2 守护进程

1. 安装 PM2

npm install -g pm2

2. 启动项目

pm2 start app.js

3. 常用命令

pm2 list
pm2 logs
pm2 restart app
pm2 stop app

4. 开机自启

pm2 startup
pm2 save

生产环境标准做法


五、使用 Systemd(更“CentOS 原生”)

1. 创建服务文件

sudo vi /etc/systemd/system/nodeapp.service

2. 示例配置

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

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

[Install]
WantedBy=multi-user.target

3. 启动

sudo systemctl daemon-reload
sudo systemctl start nodeapp
sudo systemctl enable nodeapp

六、防火墙(如果需要外网访问)

sudo firewall-cmd --permanent --add-port=3000/tcp
sudo firewall-cmd --reload

七、常见问题

1. node 命令不存在

which node

确认 PATH 或重新登录 shell

2. 权限问题

不要用 root 跑 npm

sudo chown -R $USER /usr/lib/node_modules

总结推荐

场景 推荐方式
学习 / 测试 NodeSource + node
多版本 NVM
生产 NodeSource + PM2
系统级服务 Systemd

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

  • CentOS 版本(7 / 8 / Stream)
  • Node 用途(Web / API / 脚本)
  • 是否要 Nginx 反向代理

我可以直接给你完整可复制的配置方案

0