- 将后端 API域名从 https://api.jiebanke.com 改为 https://webapi.jiebanke.com - 新增 CentOS 服务器部署指南和相关脚本 - 更新环境变量配置和 API 文档中的示例 URL
4.1 KiB
4.1 KiB
后端部署指南 - CentOS服务器
📋 部署概述
本指南详细说明如何将jiebanke后端项目部署到CentOS服务器(1.13.156.49)的 /data/nodejs/jiebanke 目录。
🎯 目标环境
- 服务器: 1.13.156.49 (CentOS)
- 部署目录: /data/nodejs/jiebanke
- 运行端口: 3000
- 进程管理: PM2
📁 部署文件说明
1. 服务器初始化脚本 (init-server.sh)
# 功能: 在目标服务器上初始化Node.js环境
# 包含: Node.js 18.x安装、PM2安装、目录创建、防火墙配置
# 用法: ./init-server.sh
2. 后端部署脚本 (deploy-backend.sh)
# 功能: 将本地后端代码部署到服务器并重启服务
# 包含: 依赖安装、文件同步、PM2重启
# 用法: ./deploy-backend.sh
3. PM2配置文件 (backend/ecosystem.config.js)
# 功能: PM2进程管理配置
# 包含: 环境配置、日志管理、性能优化、重启策略
🚀 部署步骤
步骤1: 服务器环境初始化
# 运行初始化脚本(只需执行一次)
./init-server.sh
初始化脚本执行内容:
- 更新系统包
- 安装Node.js 18.x
- 安装PM2进程管理器
- 创建项目目录结构
- 配置防火墙开放端口3000
步骤2: 后端代码部署
# 运行部署脚本(每次更新后执行)
./deploy-backend.sh
部署脚本执行内容:
- 检查本地Node.js环境
- 安装生产依赖 (
npm install --production) - 使用rsync同步代码到服务器(排除不必要的文件)
- 在服务器上安装依赖
- 使用PM2重启应用服务
步骤3: 验证部署
# 检查服务状态
ssh root@1.13.156.49 "pm2 status"
# 查看应用日志
ssh root@1.13.156.49 "tail -f /data/nodejs/jiebanke/logs/out.log"
# 测试API接口
curl http://1.13.156.49:3000/api/v1/health
🔧 配置文件说明
PM2配置 (ecosystem.config.js)
- 集群模式: 使用所有CPU核心
- 内存限制: 最大1GB内存自动重启
- 日志管理: 日志文件存储在
/data/nodejs/jiebanke/logs/ - 环境配置: 支持development/production/test环境
环境变量
部署前请确保服务器上有正确的 .env 文件,包含:
- 数据库连接配置
- JWT密钥
- Redis配置(如使用)
- 其他第三方服务配置
🛠️ 日常运维
查看服务状态
ssh root@1.13.156.49 "pm2 status"
ssh root@1.13.156.49 "pm2 logs jiebanke-backend"
重启服务
ssh root@1.13.156.49 "pm2 restart jiebanke-backend"
停止服务
ssh root@1.13.156.49 "pm2 stop jiebanke-backend"
查看系统资源
ssh root@1.13.156.49 "top"
ssh root@1.13.156.49 "df -h"
🚨 故障排除
常见问题
- 端口占用
ssh root@1.13.156.49 "lsof -i :3000"
ssh root@1.13.156.49 "kill -9 <PID>"
- 权限问题
ssh root@1.13.156.49 "chmod -R 755 /data/nodejs/jiebanke"
- 依赖安装失败
# 清除npm缓存
ssh root@1.13.156.49 "npm cache clean --force"
# 重新安装依赖
ssh root@1.13.156.49 "cd /data/nodejs/jiebanke && rm -rf node_modules && npm install"
日志分析
# 应用日志
ssh root@1.13.156.49 "tail -f /data/nodejs/jiebanke/logs/error.log"
# PM2日志
ssh root@1.13.156.49 "pm2 logs jiebanke-backend"
# 系统日志
ssh root@1.13.156.49 "journalctl -u pm2-root"
📊 监控与备份
应用监控
# 安装PM2监控插件
ssh root@1.13.156.49 "pm2 install pm2-logrotate"
ssh root@1.13.156.49 "pm2 set pm2-logrotate:max_size 10M"
ssh root@1.13.156.49 "pm2 set pm2-logrotate:retain 30"
数据备份
# 数据库备份
ssh root@1.13.156.49 "mysqldump -u root -p jiebandata > /backup/db-backup-$(date +%Y%m%d).sql"
# 代码备份
ssh root@1.13.156.49 "tar -czf /backup/code-backup-$(date +%Y%m%d).tar.gz /data/nodejs/jiebanke"
📞 支持信息
- 服务器地址: 1.13.156.49
- 部署目录: /data/nodejs/jiebanke
- 服务端口: 3000
- 进程名称: jiebanke-backend
- 日志目录: /data/nodejs/jiebanke/logs/
最后更新: 2024年 📅