首页主机资讯JS应用在Debian上如何部署

JS应用在Debian上如何部署

时间2025-10-04 14:11:03发布访客分类主机资讯浏览495
导读:1. 更新系统包 在部署前,确保Debian系统的软件包是最新的,避免兼容性问题: sudo apt update && sudo apt upgrade -y 2. 安装Node.js和npm Node.js是JS应用的...

1. 更新系统包
在部署前,确保Debian系统的软件包是最新的,避免兼容性问题:

sudo apt update &
    &
     sudo apt upgrade -y

2. 安装Node.js和npm
Node.js是JS应用的运行环境,npm是其包管理器。推荐通过NodeSource仓库安装特定版本(如16.x/18.x),或使用NVM(Node版本管理器)管理多版本:

  • NodeSource方式(推荐)
    以安装Node.js 16.x为例,运行以下命令添加仓库并安装:
    curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
    sudo apt install -y nodejs
    
  • NVM方式(适合多版本管理)
    若需切换不同Node.js版本,先安装NVM,再指定版本:
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
    source ~/.bashrc
    nvm install 16  # 安装最新16.x版本
    nvm use 16      # 切换至该版本
    

安装完成后,验证版本:

node -v  # 查看Node.js版本
npm -v   # 查看npm版本

3. 上传JS应用代码
将本地JS应用(如通过Git克隆或FTP/SFTP上传)放置到服务器目录(如/var/www/your-app):

git clone https://github.com/yourusername/your-app.git /var/www/your-app
cd /var/www/your-app

4. 安装应用依赖
JS应用通常通过package.json管理依赖,进入项目目录运行以下命令安装:

npm install
# 若需生产环境精简依赖,可添加--production参数
npm install --production

5. 配置环境变量
若应用需要敏感配置(如数据库密码、API密钥),建议使用.env文件(需安装dotenv包)或在服务器环境变量中设置:

  • 创建.env文件(不要提交至版本控制):
    echo "PORT=3000\nDB_HOST=localhost\nDB_USER=root\nDB_PASS=yourpassword" >
     .env
    
  • package.jsonscripts中引用(如"start": "node -r dotenv/config app.js")。

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

# 全局安装PM2
sudo npm install -g pm2
# 启动应用(假设入口文件为app.js)
pm2 start app.js --name "your-app"
# 保存当前进程列表(系统重启后自动恢复)
pm2 save
# 设置开机自启
pm2 startup

查看应用状态:

pm2 status
# 查看实时日志
pm2 logs your-app

7. 配置Nginx反向代理(可选但推荐)
Nginx可作为反向代理,处理HTTP请求转发、静态文件服务及SSL加密,提升应用性能和安全性:

  • 安装Nginx:
    sudo apt install nginx -y
    
  • 创建Nginx配置文件(如/etc/nginx/sites-available/your-app):
    sudo nano /etc/nginx/sites-available/your-app
    
    添加以下内容(替换your_domain.com为域名/IP,3000为应用端口):
    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 ln -s /etc/nginx/sites-available/your-app /etc/nginx/sites-enabled
    sudo nginx -t  # 测试配置语法
    sudo systemctl restart nginx
    

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

sudo ufw allow 'Nginx Full'  # 允许HTTP和HTTPS
sudo ufw enable              # 启用防火墙(若未启用)

9. 可选:配置HTTPS(推荐)
使用Let’s Encrypt免费获取SSL证书,加密应用流量:

# 安装Certbot和Nginx插件
sudo apt install certbot python3-certbot-nginx -y
# 获取证书并自动配置Nginx
sudo certbot --nginx -d your_domain.com
# 按提示完成验证(需域名解析至服务器IP)

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

10. 验证部署
打开浏览器访问http://your_domain.com(或IP地址),若看到应用页面则表示部署成功。可通过PM2日志排查问题:

pm2 logs your-app

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


若转载请注明出处: JS应用在Debian上如何部署
本文地址: https://pptw.com/jishu/720135.html
Debian如何提升JS开发效率 Linux Kafka如何进行容错处理

游客 回复需填写必要信息