Files
aijianhua/scripts/sync-to-server.sh
mapleaf a10df5928e "refactor(backend): 移除未使用的redis、socket.io和sqlite3依赖"包括:
- `backend/.env.production`:生产环境变量配置
- `backend/ecosystem.config.js`:PM2生态系统配置文件
- `scripts/nginx-aijianhua.conf`:Nginx配置文件
- `scripts/server-deploy.sh`:服务器部署脚本
- `scripts/sync-to-server.sh`:代码同步脚本
- `docs/生产环境部署指南.md`:生产环境部署指南文档

同时移除了`package.json`中不再使用的依赖项:- `redis`- `socket.io`
- `sqlite3`这些更改将有助于简化生产环境的部署流程,并确保服务能够稳定运行。```
2025-09-11 17:05:14 +08:00

62 lines
1.6 KiB
Bash

#!/bin/bash
# 爱鉴花后端服务同步脚本
# 将本地代码同步到CentOS服务器
SERVER="www.jiebanke.com"
SERVER_USER="root"
SERVER_DIR="/data/nodejs/aijianhua"
LOCAL_DIR="e:/vue/aijianhua/backend"
# 需要排除的文件和目录
exclude_list=(
"--exclude=.env"
"--exclude=.env.development"
"--exclude=.env.example"
"--exclude=node_modules/"
"--exclude=uploads/"
"--exclude=database.sqlite"
"--exclude=*.log"
"--exclude=.git/"
"--exclude=.idea/"
"--exclude=*.bat"
"--exclude=*.sh"
)
echo "🚀 开始同步爱鉴花后端代码到服务器..."
echo "📁 服务器: $SERVER"
echo "📂 目标目录: $SERVER_DIR"
echo "📦 本地目录: $LOCAL_DIR"
echo ""
# 检查rsync是否安装
if ! command -v rsync &> /dev/null; then
echo "❌ rsync 未安装,请先安装 rsync"
echo "Ubuntu/Debian: sudo apt-get install rsync"
echo "CentOS/RHEL: sudo yum install rsync"
echo "macOS: brew install rsync"
exit 1
fi
# 执行同步
rsync -avz --delete \
"${exclude_list[@]}" \
-e "ssh -p 22" \
"$LOCAL_DIR/" \
"$SERVER_USER@$SERVER:$SERVER_DIR/"
# 检查同步结果
if [ $? -eq 0 ]; then
echo ""
echo "✅ 同步完成!"
echo "📋 下一步操作:"
echo " 1. 登录服务器: ssh $SERVER_USER@$SERVER"
echo " 2. 进入目录: cd $SERVER_DIR"
echo " 3. 安装依赖: npm install --production"
echo " 4. 启动服务: pm2 start ecosystem.config.js"
echo " 5. 保存配置: pm2 save"
else
echo ""
echo "❌ 同步失败,请检查网络连接和服务器配置"
exit 1
fi