Files
pj0235-eai_agentplatform/eai_agentplatform/backend-go/deploy/eaisalestrain.env
T
eaiadminandClaude Code 20df2ff06e feat: SQLite 定期备份内置进二进制
SQLite 是单文件、没有外部主从,坏一份就是全丢,而 data/ 一直被 gitignore、
此前没有任何备份。备份做进二进制,不依赖外部 cron / systemd timer。

- 快照用 VACUUM INTO,不用 cp 主库:服务边跑边写时 cp 可能拷到写了一半的页
- 启动时补一次,之后每小时醒一次看是否到期;默认间隔 24h、保留最近 7 份
- 产出自检 SQLite 文件头,不合格即删并报错,不留「看着像备份的废物」
- 新增 -backup 子命令,供升级 / 迁移 / 交付前手工备一份
- 落 data/backups/ —— systemd 单元是 ProtectSystem=strict,只放开了 data/ 可写
- 边界写进文档:只防误删 / 误改 / 写坏,不防整盘损坏,跨机保存仍需人工

配套:
- deploy/DELIVERY.md 新增第 7 节「数据备份与恢复」+ 红线条目
- clonezilla-cleanup.sh 提示克隆前清空 data/backups/,避免原型机测试数据被带走
- deploy/eaisalestrain.env 补 4 个备份环境变量
- PROJECT_STATE.md 记 D24

另:清理 worker_task 中 17 条没聊过天的历史空任务(id 1-11、13-18),
删前先备份、清单经确认,删除程序带「命中数与白名单不一致即中止」保险。
该项为一次性数据操作,不产生代码改动。

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-14 16:33:05 +08:00

39 lines
1.3 KiB
Bash
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.
# eai_agentplatform 后端环境变量(交付样例,实际值在 Clonezilla 清理时生成)
# systemd 通过 EnvironmentFile 读取;system_config 表可覆盖 LLM 相关字段。
# 监听端口(Nginx 反代到 127.0.0.1:8080)
PORT=8080
# SQLite 数据文件(相对 WorkingDirectory=/opt/eai_agentplatform)
DB_PATH=data/eai_agentplatform.db
# JWT 签名密钥 —— 交付前必须随机生成(见 DELIVERY.md)
JWT_SECRET=__CHANGE_ME__GENERATE_48_CHARS_RANDOM__
JWT_EXPIRE_MINUTES=480
# 内网 LLM(OpenAI 兼容接口)
LLM_BASE_URL=http://127.0.0.1:11434/v1
LLM_API_KEY=ollama
LLM_MODEL=qwen2.5:7b
EMBED_MODEL=bge-m3
# 数据目录
KB_DATA_DIR=data/kb_data
KNOWLEDGE_SOURCE_DIR=/opt/eai_agentplatform/knowledge_source
# 定期备份(默认开:启动时补一次,之后每 BACKUP_INTERVAL_HOURS 小时检查一次,保留最近 BACKUP_KEEP 份)
# 备份目录必须留在 data/ 下 —— systemd 单元是 ProtectSystem=strict,只放开了 data/ 可写
BACKUP_ENABLED=true
BACKUP_DIR=data/backups
BACKUP_KEEP=7
BACKUP_INTERVAL_HOURS=24
# 上传大小限制(字节)
FILE_MAX_SIZE_DOC=209715200
FILE_MAX_SIZE_VIDEO=2147483648
CHUNK_THRESHOLD=104857600
# 文档转换裸进程
LIBREOFFICE_BIN=/usr/bin/libreoffice
PDFTOTEXT_BIN=/usr/bin/pdftotext