This commit is contained in:
zuowei1216
2025-12-22 21:06:29 +08:00
parent 8ea58fe480
commit 1b19ff1b92
179 changed files with 21895 additions and 3774 deletions

131
tempdocs/修复说明.md Normal file
View File

@@ -0,0 +1,131 @@
# ✅ 修复完成:使用 JSON 文件替代 MySQL
## 🔧 问题与解决
### 原问题
启动时弹出错误:`Can't connect to MySQL server on 'localhost'`
### 根本原因
- MySQL 运行在 Docker 容器中,端口未映射到宿主机
- 远程 MySQL 连接复杂,需要 SSH 隧道
### 最终方案 ✅
**使用 SSH + JSON 文件存储版本信息**
- ✅ 不需要配置 MySQL
- ✅ 不需要额外的库sshtunnel, pymysql
- ✅ 更简单、更可靠
- ✅ 版本信息存储在服务器:`/var/www/app_versions/.deployments.json`
---
## 📦 当前依赖(精简版)
```
PyQt5 # GUI 界面
requests # API 请求
paramiko # SSH 连接
```
---
## 🗄️ 数据存储方式
### JSON 文件位置
```
/var/www/app_versions/.deployments.json
```
### 文件格式
```json
{
"deployments": [
{
"version": "20231220_153045",
"deployed_at": "2023-12-20 15:30:45",
"is_current": true,
"file_size_mb": 12.5,
"comment": "修复主题同步bug"
},
{
"version": "20231220_102030",
"deployed_at": "2023-12-20 10:20:30",
"is_current": false,
"file_size_mb": 12.3,
"comment": "初始版本"
}
]
}
```
---
## 🚀 现在可以正常使用
### 1. 启动工具
```bash
cd AdminTool
python admin_gui.py
```
**不会再弹出数据库错误!**
### 2. 测试系统
```bash
cd AdminTool
python test_version_system.py
```
应该看到:
```
✅ 测试完成!版本管理系统一切正常
```
### 3. 开始部署
1. 构建前端:`cd Designer && npm run build:core`
2. 打开 GUI切换到"自动化部署"
3. 选择 `dist_core` 目录
4. 点击"🚀 部署到服务器"
---
## 🎯 功能验证清单
- [x] SSH 连接服务器
- [x] 创建版本目录
- [x] 读写 JSON 文件
- [x] 部署新版本
- [x] 显示版本历史
- [x] 回滚到历史版本
- [x] 删除旧版本
---
## 📝 优势对比
### 之前MySQL
- ❌ 需要 MySQL 服务器
- ❌ 需要配置数据库连接
- ❌ 需要 SSH 隧道
- ❌ 依赖多pymysql, sshtunnel
- ❌ Docker 端口映射问题
### 现在JSON 文件)
- ✅ 只需要 SSH 访问
- ✅ 自动创建文件
- ✅ 依赖少(只需 paramiko
- ✅ 简单可靠
- ✅ 易于备份和查看
---
## 🎊 总结
**问题已完全解决!** 现在可以:
1. 正常启动 GUI不会弹窗
2. 部署新版本
3. 管理版本历史
4. 随时回滚
**下一步**:开始使用部署功能!