Files
zjpb.net/MANUAL_DEPLOY.md

196 lines
4.7 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.
# 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` 更新,更加方便快捷。