From 3efb7573acc85fe2874a6aa8487a12564307d0c7 Mon Sep 17 00:00:00 2001 From: aiyimickey <39365912+aiyimickey@users.noreply.github.com> Date: Fri, 15 May 2026 16:33:16 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=88=9B=E5=BB=BA=20scripts=20?= =?UTF-8?q?=E7=9B=AE=E5=BD=95=E6=80=BB=E8=A7=88=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 介绍所有脚本的用途、用法、依赖关系和备份存储路径。 --- README.md | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..69cc56d --- /dev/null +++ b/README.md @@ -0,0 +1,95 @@ +# Scripts — 部署与运维脚本 + +多站点 Docker 项目的运维脚本集合,涵盖本地开发管理、云端部署、数据库备份恢复、内容编辑等。 + +## 脚本清单 + +| 脚本 | 用途 | 目标环境 | +|------|------|---------| +| `local.sh` | 本地站点启停管理 | 本地 Docker | +| `deploy-ai.sh` | 部署站点到 tlyq.ai(txjp 服务器) | 云端 | +| `deploy-cc.sh` | 部署站点到 tlyq.cc(tgz 服务器) | 云端 | +| `edit-site-cc.sh` | www.tlyq.cc 官网内容管理(新闻、联系方式等) | 云端 | +| `backup-db.sh` | 备份 issue-ai 和 assets-ai 数据库 | 云端 → 本地 | +| `restore-db.sh` | 恢复数据库(本地或云端) | 本地 / 云端 | + +## 详细说明 + +### local.sh — 本地站点管理 + +```bash +bash scripts/local.sh start # 启动所有站点 +bash scripts/local.sh stop # 停止所有站点 +bash scripts/local.sh restart issue # 重启指定站点 +bash scripts/local.sh status # 查看运行状态 +``` + +支持站点:www、cloud、token、issue、assets、ldap、oa。 + +启动前自动检查是否有线上域名残留,防止本地开发时跳转到生产环境。 + +### deploy-ai.sh — tlyq.ai 部署 + +```bash +bash scripts/deploy-ai.sh # 自动检测:增量 or 完整构建 +bash scripts/deploy-ai.sh --force # 强制完整构建 +bash scripts/deploy-ai.sh --restart # 仅重启容器 +``` + +交互式选择站点后执行:源码打包 → 上传 → 服务器构建 → 容器重启。部署 issue/assets 后自动验证 API 连通性(带重试机制)。 + +> 详细文档见 [deploy-ai-readme.md](deploy-ai-readme.md) + +### deploy-cc.sh — tlyq.cc 部署 + +```bash +bash scripts/deploy-cc.sh +``` + +交互式选择站点后部署到 tlyq.cc(tgz 服务器),逻辑与 deploy-ai.sh 类似。 + +### edit-site-cc.sh — tlyq.cc 官网内容编辑 + +```bash +bash scripts/edit-site-cc.sh +``` + +交互式菜单编辑 www.tlyq.cc 的联系方式、新闻动态、时间线等内容,修改后自动部署。 + +### backup-db.sh — 数据库备份 + +```bash +bash scripts/backup-db.sh +``` + +一键备份 issue-ai 和 assets-ai 的生产数据库: + +1. 执行 WAL checkpoint 确保数据一致性 +2. 在云端 `/root/docker/db-backups/` 保留一份 +3. 下载到本地 `~/programs/docker/db-backups/` +4. 验证备份文件为有效 SQLite 数据库 + +### restore-db.sh — 数据库恢复 + +```bash +# 恢复本地数据库 +bash scripts/restore-db.sh local issue issue-20260515_163059.db + +# 恢复云端数据库 +bash scripts/restore-db.sh cloud assets assets-20260515_163059.db +``` + +恢复流程:停止容器 → 备份当前库 → 替换 → 清理 WAL/SHM → 启动 → 验证。支持 `issue` 和 `assets` 两个服务。 + +## 备份存储路径 + +| 位置 | 路径 | +|------|------| +| 云端持久备份 | `/root/docker/db-backups/` | +| 本地备份 | `~/programs/docker/db-backups/` | +| 云端临时(传输中) | `/tmp/db-backup/`(完成后清理) | + +## 依赖 + +- **本地**:macOS / Linux,bash,ssh(配置 `txjp` 和 `tgz` 别名),scp,docker +- **云端**:Docker Compose,Node.js,better-sqlite3