196 lines
4.7 KiB
Markdown
196 lines
4.7 KiB
Markdown
# ZJPB v2.1 手动上传部署指南
|
||
|
||
## 📋 需要上传的文件(共10个)
|
||
|
||
### 核心文件(必须上传)
|
||
1. ✅ `app.py` - 新增Prompt管理视图
|
||
2. ✅ `models.py` - 新增PromptTemplate模型
|
||
3. ✅ `migrate_prompts.py` - 数据库迁移脚本(新文件)
|
||
|
||
### 模板文件(必须上传)
|
||
4. ✅ `templates/base_new.html` - 页脚和统计代码
|
||
5. ✅ `templates/detail_new.html` - 图标修复
|
||
6. ✅ `templates/admin/site/create.html` - 标签显示修复
|
||
7. ✅ `templates/admin/site/edit.html` - 标签显示修复
|
||
|
||
### 辅助文件(可选)
|
||
8. ⭕ `INCREMENTAL_DEPLOY.md` - 部署文档
|
||
9. ⭕ `export_data.py` - 数据导出工具
|
||
10. ⭕ `migrate_db.py` - 数据库工具
|
||
|
||
### 部署脚本(新增)
|
||
11. ✅ `quick_deploy_server.sh` - 服务器端快速部署脚本
|
||
|
||
---
|
||
|
||
## 🚀 部署步骤(使用1Panel文件管理器)
|
||
|
||
### 第一步:备份生产数据库
|
||
|
||
1. 登录1Panel管理面板
|
||
2. 进入 **数据库** → 找到 `ai_nav` 数据库
|
||
3. 点击 **备份** 按钮
|
||
4. 下载备份文件到本地保存
|
||
|
||
### 第二步:备份现有代码
|
||
|
||
1. 在1Panel中进入 **文件管理**
|
||
2. 进入 `/www/wwwroot/`
|
||
3. 右键点击 `zjpb` 文件夹
|
||
4. 选择 **压缩** → 命名为 `zjpb_backup_20250130.tar.gz`
|
||
5. 下载到本地保存
|
||
|
||
### 第三步:上传新文件
|
||
|
||
#### 方法1:使用1Panel文件管理器(推荐)
|
||
|
||
1. 在1Panel文件管理器中进入 `/www/wwwroot/zjpb/`
|
||
|
||
2. **上传核心文件**(覆盖):
|
||
- 上传 `app.py` 到 `/www/wwwroot/zjpb/`
|
||
- 上传 `models.py` 到 `/www/wwwroot/zjpb/`
|
||
- 上传 `migrate_prompts.py` 到 `/www/wwwroot/zjpb/`(新文件)
|
||
- 上传 `quick_deploy_server.sh` 到 `/www/wwwroot/zjpb/`(新文件)
|
||
|
||
3. **上传模板文件**(覆盖):
|
||
- 进入 `/www/wwwroot/zjpb/templates/`
|
||
- 上传 `base_new.html` 到 `templates/`
|
||
- 上传 `detail_new.html` 到 `templates/`
|
||
- 进入 `templates/admin/site/`
|
||
- 上传 `create.html` 到 `templates/admin/site/`
|
||
- 上传 `edit.html` 到 `templates/admin/site/`
|
||
|
||
#### 方法2:使用FTP工具(FileZilla/WinSCP)
|
||
|
||
```
|
||
服务器地址: your-server-ip
|
||
用户名: root
|
||
密码: your-password
|
||
端口: 22 (SFTP)
|
||
```
|
||
|
||
连接后进入 `/www/wwwroot/zjpb/`,直接拖拽文件上传覆盖。
|
||
|
||
### 第四步:设置脚本权限并执行部署
|
||
|
||
在1Panel终端或SSH中执行:
|
||
|
||
```bash
|
||
# 进入项目目录
|
||
cd /www/wwwroot/zjpb
|
||
|
||
# 设置脚本执行权限
|
||
chmod +x quick_deploy_server.sh
|
||
|
||
# 执行部署脚本
|
||
./quick_deploy_server.sh
|
||
```
|
||
|
||
**脚本会自动完成以下操作:**
|
||
1. ✅ 停止应用
|
||
2. ✅ 备份当前代码
|
||
3. ✅ 安装依赖(如有更新)
|
||
4. ✅ 运行数据库迁移
|
||
5. ✅ 重启应用
|
||
6. ✅ 检查状态
|
||
|
||
### 第五步:验证部署
|
||
|
||
**前台验证:**
|
||
1. 访问首页,检查页脚是否显示:
|
||
- `© 2025 ZJPB - 焦提示词 | AI工具导航`
|
||
- `浙ICP备2025154782号-1`
|
||
|
||
2. 访问任意网站详情页,检查:
|
||
- 图标是否正常显示(不是Material Icons文本)
|
||
- 返回首页按钮显示 `←` 而不是 `arrow_back`
|
||
|
||
**后台验证:**
|
||
1. 登录后台 `/admin/login`
|
||
2. 检查左侧菜单是否有 **Prompt管理**
|
||
3. 点击进入,应该看到3条默认数据:
|
||
- 标签生成
|
||
- 主要功能生成
|
||
- 详细介绍生成
|
||
|
||
4. 进入 **网站管理** → 编辑任意网站
|
||
5. 检查标签区域是否正常显示标签名称(不是空白蓝框)
|
||
|
||
**AI功能验证:**
|
||
1. 创建新网站或编辑现有网站
|
||
2. 测试 "AI生成标签" 按钮
|
||
3. 测试 "AI生成详细介绍" 按钮
|
||
4. 测试 "AI生成主要功能" 按钮
|
||
|
||
---
|
||
|
||
## 🐛 常见问题
|
||
|
||
### Q1: 上传后文件权限错误
|
||
```bash
|
||
# 设置正确的权限
|
||
cd /www/wwwroot/zjpb
|
||
chmod 644 *.py
|
||
chmod 755 *.sh
|
||
```
|
||
|
||
### Q2: 脚本执行失败
|
||
```bash
|
||
# 手动执行步骤
|
||
cd /www/wwwroot/zjpb
|
||
./manage.sh stop
|
||
source venv/bin/activate
|
||
python migrate_prompts.py
|
||
./manage.sh start
|
||
```
|
||
|
||
### Q3: 数据库迁移报错 "表已存在"
|
||
这是正常的,说明之前已经运行过,可以忽略。
|
||
|
||
### Q4: 应用无法启动
|
||
```bash
|
||
# 查看错误日志
|
||
./manage.sh logs
|
||
|
||
# 或
|
||
tail -f logs/error.log
|
||
```
|
||
|
||
---
|
||
|
||
## 🔄 快速回滚(如出现问题)
|
||
|
||
```bash
|
||
cd /www/wwwroot/zjpb
|
||
./manage.sh stop
|
||
|
||
# 恢复备份
|
||
cd /www/wwwroot
|
||
rm -rf zjpb
|
||
tar -xzf zjpb_backup_20250130.tar.gz
|
||
|
||
# 重启
|
||
cd zjpb
|
||
./manage.sh start
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 部署检查清单
|
||
|
||
- [ ] 生产数据库已备份
|
||
- [ ] 现有代码已备份
|
||
- [ ] 所有文件上传完成
|
||
- [ ] 部署脚本执行成功
|
||
- [ ] 前台页脚显示正常
|
||
- [ ] 详情页图标显示正常
|
||
- [ ] 后台Prompt管理菜单存在
|
||
- [ ] 标签显示正常
|
||
- [ ] AI功能测试通过
|
||
|
||
---
|
||
|
||
## 💡 提示
|
||
|
||
如果你经常需要部署更新,建议配置Git远程仓库(GitHub/Gitee),下次就可以直接 `git pull` 更新,更加方便快捷。
|