Files
DP/tempdocs/修复说明.md
zuowei1216 1b19ff1b92 20251222
2025-12-22 21:06:29 +08:00

132 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ✅ 修复完成:使用 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. 随时回滚
**下一步**:开始使用部署功能!