温馨提示×

如何在CentOS上部署Node.js项目

小樊
54
2025-08-08 20:56:25
栏目: 编程语言

在CentOS上部署Node.js项目可以按照以下步骤进行:

1. 安装Node.js和npm

首先,你需要在CentOS上安装Node.js和npm。你可以使用NodeSource的二进制分发库来安装最新版本的Node.js。

# 添加NodeSource库
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -

# 安装Node.js和npm
sudo yum install -y nodejs

2. 验证安装

安装完成后,你可以验证Node.js和npm是否正确安装。

node -v
npm -v

3. 创建项目目录

在你的服务器上创建一个目录来存放你的Node.js项目。

mkdir ~/my-nodejs-app
cd ~/my-nodejs-app

4. 初始化项目

使用npm初始化你的项目。

npm init -y

5. 安装项目依赖

将你的项目文件上传到服务器上的项目目录中,然后安装项目依赖。

npm install

6. 配置环境变量(可选)

如果你需要配置环境变量,可以在~/.bashrc/etc/profile.d/目录下创建一个脚本文件。

# 在 ~/.bashrc 或 /etc/profile.d/ 下创建一个脚本文件,例如 setenv.sh
echo "export NODE_ENV=production" >> ~/.bashrc
source ~/.bashrc

7. 启动项目

你可以使用npm start命令来启动你的Node.js应用。

npm start

如果你希望项目在后台运行,可以使用pm2来管理你的Node.js应用。

安装pm2

sudo npm install -g pm2

使用pm2启动项目

pm2 start app.js --name my-app

查看pm2进程

pm2 list

停止pm2进程

pm2 stop my-app

重启pm2进程

pm2 restart my-app

8. 配置Nginx反向代理(可选)

如果你希望通过Nginx来代理你的Node.js应用,可以按照以下步骤进行配置。

安装Nginx

sudo yum install -y nginx

启动Nginx

sudo systemctl start nginx
sudo systemctl enable nginx

配置Nginx

编辑Nginx配置文件,例如/etc/nginx/conf.d/default.conf

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;
        proxy_cache_bypass $http_upgrade;
    }
}

重启Nginx

sudo systemctl restart nginx

9. 配置防火墙(可选)

如果你使用的是CentOS 7或更高版本,可能需要配置防火墙以允许HTTP和HTTPS流量。

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

完成以上步骤后,你的Node.js项目应该已经在CentOS上成功部署并运行了。

0