首页主机资讯CentOS下Node.js项目部署步骤

CentOS下Node.js项目部署步骤

时间2025-10-01 09:23:03发布访客分类主机资讯浏览1189
导读:1. 更新系统及安装基础工具 首先更新系统软件包并安装必要工具(如wget、git): sudo yum update -y sudo yum install -y wget git 2. 安装Node.js与npm 通过NodeSour...

1. 更新系统及安装基础工具
首先更新系统软件包并安装必要工具(如wget、git):

sudo yum update -y
sudo yum install -y wget git

2. 安装Node.js与npm
通过NodeSource仓库安装指定版本(如18.x,可根据项目需求调整)的Node.js和npm,确保版本兼容性:

curl -sL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs
# 验证安装
node -v  # 应输出v18.x.x
npm -v   # 应输出对应版本

3. 配置防火墙
开放HTTP(80)和HTTPS(443)端口,允许外部访问:

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

4. 部署Node.js项目

  • 方式一:通过Git克隆项目(推荐,便于版本管理)
    mkdir -p /var/www/myapp &
        &
         cd /var/www/myapp
    git clone <
        your_project_repo_url>
     .  # 克隆项目到当前目录
    
  • 方式二:手动上传项目(如使用scp)
    scp -r /local/project/path user@server_ip:/var/www/myapp
    cd /var/www/myapp
    

5. 安装项目依赖
进入项目目录,根据package.json安装生产环境依赖(忽略devDependencies):

npm install --production
# 或使用yarn(需提前安装:sudo npm install -g yarn)
yarn install --production

6. 使用PM2管理Node.js进程
PM2是Node.js进程管理工具,可实现后台运行、自动重启和负载均衡:

sudo npm install -g pm2  # 全局安装PM2
pm2 start app.js --name "my-node-app"  # 启动应用(app.js为入口文件,按项目实际修改)
pm2 save                 # 保存当前进程列表
pm2 startup              # 生成开机自启动脚本(按提示执行生成的命令,如`sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u root --hp /root`)

7. 配置Nginx反向代理(可选但推荐)
Nginx可提供HTTPS支持、负载均衡和静态文件缓存,提升应用性能和安全性:

sudo yum install -y nginx  # 安装Nginx
# 配置反向代理(编辑默认配置或新建站点配置)
sudo vi /etc/nginx/conf.d/myapp.conf

添加以下内容(替换your_domain.com为域名/IP,3000为Node.js应用端口):

server {
    
    listen 80;
    
    server_name your_domain.com;

    location / {
    
        proxy_pass http://localhost:3000;
      # 转发到Node.js应用
        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
sudo systemctl enable nginx  # 开机自启动

8. 配置SSL证书(可选,推荐)
使用Let’s Encrypt免费获取SSL证书,启用HTTPS:

sudo yum install -y certbot python3-certbot-nginx  # 安装Certbot
sudo certbot --nginx -d your_domain.com            # 自动配置Nginx HTTPS
# 按提示完成证书申请(需验证域名所有权)
# 证书自动续期(Certbot会添加cron任务)

9. 验证部署

  • 访问http://your_domain.com(或https://your_domain.com),确认应用正常运行。
  • 查看PM2进程状态:pm2 list(应显示应用为online)。
  • 查看应用日志:pm2 logs my-node-app(排查启动或运行错误)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS下Node.js项目部署步骤
本文地址: https://pptw.com/jishu/715527.html
CentOS FetchLinux需要多少资源 CentOS上SQL Server的性能调优有哪些策略

游客 回复需填写必要信息