温馨提示×

centos上nodejs如何部署项目

小樊
47
2025-04-08 14:25:53
栏目: 编程语言

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

1. 安装Node.js

首先,你需要在CentOS上安装Node.js。你可以使用NodeSource提供的Node.js二进制分发库来安装。

使用NodeSource安装Node.js

  1. 添加NodeSource仓库

    curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash - 

    这里的14.x是你想要安装的Node.js版本,你可以根据需要更改。

  2. 安装Node.js和npm

    sudo yum install -y nodejs 
  3. 验证安装

    node -v npm -v 

2. 配置项目

确保你的Node.js项目已经准备好,并且包含一个package.json文件。

3. 安装项目依赖

在你的项目目录中运行以下命令来安装所有依赖:

npm install 

4. 设置环境变量

如果你的项目需要特定的环境变量,可以在项目根目录下创建一个.env文件,并在其中设置这些变量。例如:

PORT=3000 DB_HOST=localhost DB_USER=root DB_PASSWORD=password 

然后,你可以使用dotenv包来加载这些环境变量。首先安装dotenv

npm install dotenv 

在你的主入口文件(例如app.jsindex.js)中添加以下代码:

require('dotenv').config(); 

5. 启动项目

使用以下命令启动你的Node.js应用:

node app.js 

或者,如果你使用的是Express框架,可以使用npm start

"scripts": { "start": "node app.js" } 

然后运行:

npm start 

6. 使用PM2管理Node.js进程

为了确保你的Node.js应用在后台持续运行,并且能够自动重启,建议使用PM2。

  1. 安装PM2

    sudo npm install pm2 -g 
  2. 启动项目

    pm2 start app.js --name my-app 

    这里的my-app是你的应用名称,你可以根据需要更改。

  3. 查看进程列表

    pm2 list 
  4. 停止进程

    pm2 stop my-app 
  5. 重启进程

    pm2 restart my-app 
  6. 删除进程

    pm2 delete my-app 

7. 配置Nginx反向代理

为了提高性能和安全性,你可以配置Nginx作为反向代理。

  1. 安装Nginx

    sudo yum install nginx -y 
  2. 启动并启用Nginx

    sudo systemctl start nginx sudo systemctl enable nginx 
  3. 配置Nginx: 编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf/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; } } 

    yourdomain.com替换为你的域名,3000替换为你的Node.js应用监听的端口。

  4. 重新加载Nginx配置

    sudo systemctl reload nginx 

现在,你的Node.js项目应该已经成功部署在CentOS上,并且可以通过浏览器访问了。

0