aiyimickey
|
ec6d2c8c4a
|
docs: README 更新 — monitor-ai + deploy-monitor + check-compliance + 自动发现
|
2026-07-08 12:10:15 +08:00 |
aiyimickey
|
9c9e5d7c44
|
fix: backup/restore scripts — auto-discover sites + add monitor-ai coverage
- backup-sites.sh: 自动发现含 DB 站点 + monitor case + wildcard 通用备份
- backup-db.sh: 自动发现站点 + 并行 WAL checkpoint + 动态 docker cp
- backup-full.sh: 自动发现 + monitor WAL + db export
- restore-sites.sh: 自动发现 + restore_monitor + restore_generic 通用恢复
- restore-db.sh: 新增 monitor/gitea case
- restore-full.sh: 新增 restore_monitor + 菜单位移
|
2026-07-08 12:06:03 +08:00 |
aiyimickey
|
3dd394d943
|
feat: 构建新鲜度自动检查(deploy-ai.sh + deploy-monitor.sh)
|
2026-07-08 10:45:23 +08:00 |
aiyimickey
|
3991ce5134
|
chore: 修复行 522 混合缩进(制表符+空格→4空格)
|
2026-07-03 14:40:02 +08:00 |
aiyimickey
|
cd552a1a4d
|
fix: deploy-ai.sh 全面审查修复(15项)
- C1: SSO 首次部署自动生成 JWKS 密钥
- C2: 首次部署自动生成 JWT_SECRET / OIDC_CLIENT_SECRET / LOCALADMIN_PASSWORD
- H1: LDAP 密码 sed 改用 | 分隔符
- H2: LLDAP 密钥写入改用 printf
- H3: OIDC client_secret 从 Authelia 配置自动注入
- H4: to_prod/to_local 改为白名单模式
- M1: 构建失败 return 1 阻断部署
- M2: 部署后清理远程 /tmp 临时文件
- M4: 移除构建日志本地保存
- L1: 修复缩进不一致
- L2: AUTHELIA_URL 仅对 OIDC 站点注入
- L3: monitor nginx reload 前添加 nginx -t
- L5: curl -k 添加说明注释
- L6: 磁盘紧急清理时截断容器日志
|
2026-07-03 14:37:54 +08:00 |
aiyimickey
|
1232efa191
|
fix: 部署脚本 .env 文件设置 600 权限(防止密码泄露)
|
2026-07-03 14:13:24 +08:00 |
aiyimickey
|
4ea06ba637
|
fix: deploy_sso JWKS 密钥处理 + 配置备份 + 占位符检测
|
2026-07-03 13:50:41 +08:00 |
aiyimickey
|
d34c0c7cb5
|
fix: deploy-ai.sh musl 清理逻辑添加 monitor 站点
|
2026-07-03 13:24:17 +08:00 |
aiyimickey
|
2bda66bd64
|
feat: deploy-ai.sh 新增 monitor 部署支持 + .env.prod 模板处理
- 新增菜单选项 10) monitor.tlyq.ai
- monitor 使用 build_on_server + nginx 部署
- OIDC 环境变量注入支持 monitor
- 部署时从 .env.prod 模板补充缺失变量
- SSO 部署改用 configuration.prod.yml
|
2026-07-03 12:12:31 +08:00 |
aiyimickey
|
f1ababe5be
|
fix: 修复站点管理脚本状态检测问题
- 统一使用端口检测替代容器名检测(更可靠)
- 所有站点状态显示端口号
- 修复 sso 容器名:sso-ai → authelia(本地和云端一致)
- 修复 macOS bash 3.2 兼容性:移除 declare -A 和 mapfile
- 新增端口常量:WWW_AI_PORT、CLOUD_AI_PORT、TOKEN_AI_PORT
|
2026-07-02 18:36:55 +08:00 |
aiyimickey
|
e2937d0ce1
|
fix: Docker 构建前临时替换 shared 符号链接为实际目录
Docker COPY 无法跟随指向构建上下文外的符号链接,
导致 @shared/* 模块在容器内构建时找不到。
构建前临时替换、构建后恢复。
|
2026-07-02 17:01:23 +08:00 |
aiyimickey
|
01836971e5
|
security: monitor-watchdog.sh 移除硬编码 webhook key,改为从 env/.env/数据库读取
|
2026-07-02 11:27:20 +08:00 |
aiyimickey
|
312c7ff681
|
refactor: shared 共享库统一管理,快照比对避免重复上传;所有 Next.js 站点自动受益
|
2026-07-02 11:25:33 +08:00 |
aiyimickey
|
df27929294
|
feat: SSO 统一认证登录
- 更新 deploy-ai.sh 添加 OIDC 环境变量自动配置
|
2026-06-30 17:09:31 +08:00 |
aiyimickey
|
952706055a
|
feat: deploy-ai.sh 新增 sso-ai 部署支持 + sites-manage-local.sh 新增 gitea
- deploy-ai.sh: 新增选项 9 sso-ai 部署、deploy_sso 函数、密钥生成、LDAP 密码注入
- sites-manage-local.sh: 新增 gitea 支持、localhost → 127.0.0.1
|
2026-06-29 18:40:02 +08:00 |
aiyimickey
|
4b65bfa850
|
feat: 完善备份和恢复脚本
- 新增备份脚本目录结构
- 新增站点独立备份脚本
- 新增完整备份脚本
- 新增数据库备份脚本
- 新增站点恢复脚本
- 新增完整恢复脚本
- 更新 README 文档
|
2026-06-23 10:59:41 +08:00 |
aiyimickey
|
502d1341fb
|
fix: 备份脚本改用 docker cp 从容器内复制数据库文件
assets-ai 和 issue-ai 使用 Docker volume 存储数据,之前用 cp 从宿主机路径
复制拿到的是残留旧文件(assets.db 只有 4KB),改为 docker cp 确保拿到真实数据。
|
2026-05-18 14:57:19 +08:00 |
aiyimickey
|
78ff4b01b6
|
refactor: local.sh 更名为 sites-manage-local.sh,新增 sites-manage-cloud.sh 云端管理脚本
- local.sh → sites-manage-local.sh(重命名,职责更清晰)
- 新增 sites-manage-cloud.sh(云服务器站点启停管理)
- 更新 backup-db.sh、deploy-ai.sh、restore-db.sh
- 添加 .gitignore(忽略 .DS_Store)
|
2026-05-18 14:52:40 +08:00 |
aiyimickey
|
3efb7573ac
|
docs: 创建 scripts 目录总览 README
介绍所有脚本的用途、用法、依赖关系和备份存储路径。
|
2026-05-15 16:33:16 +08:00 |
aiyimickey
|
8eff29e4f1
|
feat: 备份同时保存云端持久副本
云端 /root/docker/db-backups/ 与本地同步保留备份文件,
/tmp/db-backup/ 仅作传输中转,完成后清理。
|
2026-05-15 16:30:48 +08:00 |
aiyimickey
|
cb0424c896
|
fix: 备份/恢复脚本统一用 better-sqlite3 替代 sqlite3 CLI
容器内没有 sqlite3 CLI(Alpine 基础镜像),统一改为 docker exec node -e
调用 better-sqlite3 执行 checkpoint 和验证。
|
2026-05-15 16:29:42 +08:00 |
aiyimickey
|
7c213873bb
|
fix: 备份与恢复脚本深度修复
backup-db.sh:
- 新增备份后 SQLite 文件有效性验证(scp 传输后检查)
restore-db.sh (云端恢复):
- 修复:验证用 docker cp + docker exec sqlite3,不再依赖宿主机 sqlite3
- 修复:先停止容器再替换数据库,防止写入冲突
- 修复:替换后删除 WAL/SHM 残留文件,防止旧日志与新库不匹配损坏
|
2026-05-15 16:24:41 +08:00 |
aiyimickey
|
d65583f6df
|
fix: 备份前执行 WAL checkpoint + 确保本地目录存在
- 复制数据库文件前通过 docker exec sqlite3 执行 PRAGMA wal_checkpoint(TRUNCATE),
确保 WAL 内容合并到 .db 主文件,避免备份不一致或损坏
- 添加 mkdir -p 确保本地备份目录存在
|
2026-05-15 16:19:15 +08:00 |
aiyimickey
|
f3373d6f9a
|
docs: 更新连通性检查文档 — 重试机制 + 双向检查
|
2026-05-15 15:21:33 +08:00 |
aiyimickey
|
ccc0f5800d
|
feat: 连通性检查加重试机制 + 新增 assets→issue 方向检查
- 两边检查均自带 3 次重试(间隔 10s),应对同时部署时目标容器暂不可达
- 新增 assets→issue API 连通性检查,与 issue→assets 对称
|
2026-05-15 15:18:57 +08:00 |
aiyimickey
|
a7e0651bd5
|
docs: 新增 deploy-ai.sh README 与部署连通性检查(v2026.05.14)
- [新增] deploy-ai-readme.md 完整文档
- [新增] deploy-ai.sh 部署后自动验证 issue→assets API 连通性
|
2026-05-15 09:18:55 +08:00 |