# serverdata —— 运行时数据目录 server-core 的全部**运行时数据**落盘目录。容器部署时由 `code/deploy/docker-compose.yml` 按子目录挂载卷持久化;镜像内保留 `seed/`、`prompts/` 模板(构建时 COPY,不被卷覆盖)。 ## 子目录用途 | 路径 | 用途 | 入库策略 | |---|---|---| | `seed/` | 首次启动种子数据(JSON 等,代码初始化依赖) | ✅ 提交(模板) | | `prompts/` | 提示词模板(智能客服等) | ✅ 提交(模板) | | `data/` | SQLite 数据库文件(`*.db`)及 JSON 运行时数据 | ❌ 忽略(.gitignore) | | `logs/` | 运行日志 | ❌ 忽略 | | `files/` | 通用文件 | ❌ 忽略 | | `keys/` | **密钥文件(微信支付证书等,敏感)** | ❌ 忽略 | | `uploads/` | 运行时上传(头像等) | ❌ 忽略 | | `park/` | 园区子应用运行时数据(SQLite 多租户库/媒体/大屏) | ❌ 忽略 | | `backup/` | 备份产物 | ❌ 忽略 | ## 依赖说明 - **密钥依赖**:`keys/` 内的证书/私钥文件由 `PINEAGENTS_WECHATPAY_*`、`PINEAGENTS_WX_SP_*` 等环境变量(路径)引用;容器部署时挂载 `deploy/data/server-core/keys` 后填入。 - **种子依赖**:`seed/` 由应用 lifespan 首次启动时读取初始化(类似 `data/seed/` 机制), 缺失时应用会报"无种子数据"类错误,勿删除。 - **数据库依赖**:`data/*.db` 为 SQLite 回退库;MySQL 为主库(`PINEAGENTS_MYSQL_*` 配置)。 - **模板依赖**:`prompts/` 为运行期读取的提示词模板,修改后需重启服务生效。 ## 容器部署挂载对照(code/deploy/docker-compose.yml) | serverdata 子目录 | 宿主机路径 | |---|---| | `data/` | `deploy/data/server-core/data` | | `logs/` | `deploy/data/server-core/logs` | | `files/` | `deploy/data/server-core/files` | | `keys/` | `deploy/data/server-core/keys` | | `uploads/` | `deploy/data/server-core/uploads` | | `park/` | `deploy/data/server-core/park` | | `backup/` | `deploy/data/server-core/backup` | > `seed/`、`prompts/` 未挂载卷(随镜像提供);如需要在宿主机持久化修改 prompts, > 追加挂载 `./data/server-core/prompts:/app/serverdata/prompts`。 ## 备份建议 备份只需覆盖挂载目录:`deploy/data/server-core/{data,keys,uploads,park}` 与 `deploy/data/uploads`。`logs/`、`files/` 可按需保留。