首页主机资讯Debian Node.js项目怎么部署

Debian Node.js项目怎么部署

时间2025-10-16 22:33:03发布访客分类主机资讯浏览1038
导读:Debian系统部署Node.js项目完整步骤 1. 更新系统包 首先确保Debian系统包为最新版本,避免依赖冲突: sudo apt update && sudo apt upgrade -y 2. 安装Node.js...

Debian系统部署Node.js项目完整步骤

1. 更新系统包

首先确保Debian系统包为最新版本,避免依赖冲突:

sudo apt update &
    &
     sudo apt upgrade -y

2. 安装Node.js与npm

通过NodeSource仓库安装指定版本的Node.js(以16.x为例,可根据需求替换为14.x、18.x等):

# 导入NodeSource库的GPG密钥并添加仓库
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
# 安装Node.js(包含npm)
sudo apt install -y nodejs
# 验证安装
node -v  # 查看Node.js版本
npm -v   # 查看npm版本

3. 准备项目文件

  • 本地创建项目:在本地机器初始化Node.js项目并开发,完成后通过scp或SFTP上传至服务器:
    # 本地操作(示例)
    mkdir my-nodejs-app &
        &
         cd my-nodejs-app
    npm init -y
    npm install express body-parser  # 安装依赖
    # 创建app.js(示例代码)
    echo "const express = require('express');
         const app = express();
         const port = 3000;
         app.get('/', (req, res) =>
         res.send('Hello World'));
         app.listen(port, () =>
     console.log(\`App running on port \${
    port}
        \`));
        " >
     app.js
    # 上传至服务器(替换为你的服务器IP和用户名)
    scp -r my-nodejs-app username@your_server_ip:/home/username/
    
  • 服务器端操作:进入项目目录:
    cd /home/username/my-nodejs-app
    

4. 安装项目依赖

在项目目录下运行以下命令,安装package.json中定义的依赖:

npm install

5. 使用PM2管理进程

PM2是Node.js进程管理工具,可实现后台运行、自动重启、日志管理等功能:

# 全局安装PM2
sudo npm install pm2 -g
# 启动应用(--name指定应用名称)
pm2 start app.js --name "my-node-app"
# 设置开机自启动(避免服务器重启后应用停止)
pm2 startup
# 保存当前进程列表(确保重启后恢复)
pm2 save
# 常用命令:查看状态(pm2 status)、查看日志(pm2 logs)、重启应用(pm2 restart my-node-app)

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

Nginx可作为反向代理,处理HTTP请求转发、SSL卸载及静态文件服务,提升应用性能与安全性:

# 安装Nginx
sudo apt install nginx -y
# 配置反向代理(编辑默认站点配置)
sudo nano /etc/nginx/sites-available/default

在配置文件中修改server块(替换your_domain_or_ip为你的域名或公网IP):

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 nginx -t  # 测试配置语法
sudo systemctl reload nginx  # 重启Nginx

7. 配置防火墙

若服务器启用了ufw防火墙,需开放HTTP(80)和HTTPS(443)端口:

sudo ufw allow 'Nginx Full'  # 允许Nginx的全部流量(包括80/443端口)
sudo ufw enable  # 启用防火墙(若未启用)

8. 可选:配置SSL证书(免费版)

使用Let’s Encrypt为站点配置免费SSL证书,实现HTTPS加密:

# 安装Certbot及Nginx插件
sudo apt install certbot python3-certbot-nginx -y
# 获取证书并自动配置Nginx
sudo certbot --nginx -d your_domain.com  # 替换为你的域名
# 按提示完成验证(通常需修改DNS记录或输入邮箱)

证书会自动续期,无需手动操作。

通过以上步骤,你的Node.js项目已在Debian系统上完成部署,可通过http://your_domain_or_ip(或HTTPS)访问。

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


若转载请注明出处: Debian Node.js项目怎么部署
本文地址: https://pptw.com/jishu/728490.html
Debian上Node.js性能如何 Node.js在Debian稳定吗

游客 回复需填写必要信息