Debian Node.js项目怎么部署
导读: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