centos

centos下nodejs项目怎么部署

小樊
43
2025-05-27 01:01:03
栏目: 编程语言

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

1. 安装Node.js

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

使用NodeSource安装Node.js

  1. 添加NodeSource仓库:

    curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
    
  2. 安装Node.js:

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

    node -v
    npm -v
    

2. 安装PM2

PM2是一个进程管理器,可以帮助你管理和保持Node.js应用程序在线。

  1. 安装PM2:

    sudo npm install pm2 -g
    
  2. 验证安装:

    pm2 -v
    

3. 部署Node.js项目

假设你的项目已经准备好,并且有一个package.json文件。

  1. 克隆项目到服务器:

    git clone <你的项目仓库URL>
    cd <项目目录>
    
  2. 安装项目依赖:

    npm install
    
  3. 启动项目:

    pm2 start app.js --name <你的应用名称>
    

    其中,app.js是你的入口文件,<你的应用名称>是你给应用起的名字。

4. 配置PM2

你可以使用PM2的配置文件来管理你的应用。

  1. 创建一个PM2配置文件(例如ecosystem.config.js):

    module.exports = {
      apps: [{
        name: 'my-app',
        script: 'app.js',
        instances: 'max',
        exec_mode: 'cluster',
        autorestart: true,
        watch: false,
        max_memory_restart: '1G',
        env: {
          NODE_ENV: 'development'
        },
        env_production: {
          NODE_ENV: 'production'
        }
      }]
    };
    
  2. 使用配置文件启动应用:

    pm2 start ecosystem.config.js --env production
    

5. 配置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 <你的域名或IP>;
    
        location / {
            proxy_pass http://localhost:3000; # 假设你的Node.js应用运行在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;
        }
    }
    
  4. 重启Nginx服务:

    sudo systemctl restart nginx
    

6. 监控和管理

你可以使用PM2的命令来监控和管理你的Node.js应用。

通过以上步骤,你就可以在CentOS系统上成功部署Node.js项目了。

0
看了该问题的人还看了