48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
# 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/` 可按需保留。
|