首页主机资讯Debian上Node.js的部署流程是怎样的

Debian上Node.js的部署流程是怎样的

时间2025-11-05 17:20:04发布访客分类主机资讯浏览804
导读:Debian上Node.js部署完整流程 1. 更新系统包 部署前需确保系统包为最新版本,避免依赖冲突: sudo apt update && sudo apt upgrade -y 2. 安装Node.js与npm No...

Debian上Node.js部署完整流程

1. 更新系统包

部署前需确保系统包为最新版本,避免依赖冲突:

sudo apt update &
    &
     sudo apt upgrade -y

2. 安装Node.js与npm

Node.js的部署需先安装运行环境,推荐以下两种方式(根据需求选择):

  • 方式一:通过NodeSource仓库安装(推荐,支持自定义版本)
    以安装Node.js 18.x(LTS版本)为例,执行以下命令添加NodeSource仓库并安装:
    curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
    sudo apt install -y nodejs
    
  • 方式二:使用系统默认APT仓库安装(版本较旧)
    若无需特定版本,可直接通过APT安装:
    sudo apt install -y nodejs npm
    

验证安装

node -v  # 查看Node.js版本(如v18.x.x)
npm -v   # 查看npm版本(如9.x.x)

3. 创建项目目录与初始化

  • 创建项目目录
    选择一个存放项目的路径(如用户主目录下的my-node-app):
    mkdir ~/my-node-app &
        &
     cd ~/my-node-app
    
  • 初始化Node.js项目
    运行npm init -y生成package.json文件(包含项目元数据与依赖配置):
    npm init -y
    

4. 安装项目依赖

根据项目需求安装依赖包(以Express框架为例):

npm install express --save  # --save参数将依赖写入package.json的dependencies

若需安装开发依赖(如nodemon),使用--save-dev

npm install nodemon --save-dev

5. 配置进程管理(PM2)

为确保应用在后台持续运行、自动重启及监控状态,推荐使用PM2:

  • 全局安装PM2
    sudo npm install pm2 -g
    
  • 启动应用
    假设入口文件为app.js,执行以下命令启动:
    pm2 start app.js --name "my-node-app"
    
  • 常用PM2命令
    pm2 list          # 查看运行中的应用列表
    pm2 logs          # 查看应用日志
    pm2 save          # 保存当前进程列表(便于系统重启后恢复)
    pm2 startup       # 设置PM2开机自启动(需根据提示执行后续命令)
    

6. 配置Nginx反向代理(可选但推荐)

Nginx可作为反向代理,处理HTTP请求转发、负载均衡及SSL卸载,提升应用性能与安全性:

  • 安装Nginx
    sudo apt install -y nginx
    
  • 配置反向代理
    编辑Nginx默认站点配置文件(或新建自定义配置):
    sudo nano /etc/nginx/sites-available/my-node-app
    
    添加以下内容(将your_domain_or_ip替换为服务器域名或IP,3000替换为Node.js应用端口):
    server {
        
        listen 80;
        
        server_name your_domain_or_ip;
    
        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 ln -s /etc/nginx/sites-available/my-node-app /etc/nginx/sites-enabled
    sudo nginx -t  # 测试配置语法是否正确
    sudo systemctl restart nginx
    

7. 配置防火墙

允许HTTP(80)与HTTPS(443)流量通过防火墙(若使用UFW):

sudo ufw allow 'Nginx Full'  # 允许Nginx的全部流量(HTTP+HTTPS)
sudo ufw enable              # 启用防火墙(若未启用)

8. (可选)配置SSL证书

为应用启用HTTPS加密,推荐使用Let’s Encrypt免费证书:

  • 安装Certbot
    sudo apt install -y certbot python3-certbot-nginx
    
  • 获取并配置证书
    sudo certbot --nginx -d your_domain.com -d www.your_domain.com
    
    按提示完成证书申请,Certbot会自动修改Nginx配置以支持HTTPS。

9. 部署验证

  • 通过IP/域名访问
    在浏览器输入服务器IP或域名,若看到应用页面(如Express的“Hello World”),则部署成功。
  • 查看PM2状态
    pm2 status  # 确认应用处于“online”状态
    

以上流程覆盖了Debian系统上Node.js从环境安装到生产部署的关键步骤,可根据实际需求调整(如切换Node.js版本、添加更多依赖或优化Nginx配置)。

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


若转载请注明出处: Debian上Node.js的部署流程是怎样的
本文地址: https://pptw.com/jishu/743092.html
Debian中getconf命令支持哪些选项 Debian上Node.js的版本如何选择

游客 回复需填写必要信息