数据、隐私与备份
TrailSnap 是自托管应用:照片、数据库和账号数据保存在你部署的服务器或 NAS 上。项目不会因为你安装了 TrailSnap 而自动接收你的照片;但服务器的实际管理员仍需要负责访问控制、备份和公网安全。
数据会保存在哪里
| 数据 | 默认位置 | 你需要注意的事 |
|---|---|---|
| 原始照片与缩略图 | 你挂载到服务的照片目录 | 不要在任务执行中直接移动或删除文件 |
| 相册、账号、任务和索引 | PostgreSQL 数据库卷 | 升级和迁移前应备份 |
| AI 分析结果 | 数据库及相关存储 | 删除照片后应按需要清理关联任务与结果 |
| Agent Token | TrailSnap 数据库 | 仅授予必要范围,泄露后立即撤销 |
使用 AI 时的数据边界
- 使用本地模型或本地托管 LLM 时,推理数据保留在你的设备和服务器内。
- 配置 OpenAI、Ollama 远程实例或其他第三方模型服务时,发送哪些文字、图片或元数据取决于你启用的功能与服务商设置。请先阅读该服务的隐私条款,并避免把敏感照片用于不受信任的服务。
- 不要把 API Key、Agent Token 或含有完整 Token 的截图发布到 Issue、群聊或日志中。
部署安全清单
- 仅在家庭局域网使用时,也请为 TrailSnap 账号设置强密码。
- 公网访问请使用域名、HTTPS 和反向代理;不要直接暴露 PostgreSQL、管理端口或 Docker Socket。
- 仅把必要端口开放给可信网络;手机 App 通过公网访问时必须使用 HTTPS。
- 定期更新 TrailSnap 与 Docker 镜像,并在更新前阅读更新日志。
- 若多人共用服务器,为每位用户创建独立账号,不要共用管理员账号或 Token。
备份与恢复
至少应备份两类内容:照片目录与 PostgreSQL 数据库。只备份其中一类,恢复后都会出现照片文件与相册记录不一致的风险。
建议频率
- 照片目录:增量或实时同步到另一块磁盘 / NAS。
- 数据库:每天备份;在升级、迁移、批量整理或清理前额外备份一次。
- 定期做一次恢复演练,确认备份并非只“看起来存在”。
恢复原则
- 停止相关服务,避免恢复期间继续写入。
- 使用同一时间点的照片备份和数据库备份恢复。
- 启动服务后检查照片数量、相册、账号和任务状态;必要时重新执行扫描或索引。
不同部署方式的卷名和目录可能不同。请先在自己的 docker-compose.yml 与 .env 中确认实际路径,再执行备份或恢复命令。
数据删除
删除应用中的照片、相册或账号不等于自动抹除所有备份。若需要彻底删除,请同时检查:照片目录、数据库备份、同步盘和第三方 AI 服务的相关记录。