站点注册表
DataDir/registry.json 是服务器唯一的持久化状态,记录全部已注册站点:
[
{
"name": "my-docs",
"domain": "docs.example.com",
"sourceKind": "git",
"sourceUrl": "https://git.example.com/team/my-docs.git",
"ref": "main",
"pages": 42,
"builtAt": "2026-09-22T08:00:00Z"
}
]
条目字段结构见站内搜索 ?SiteRecord。
写入规则
| 规则 | 说明 |
|---|---|
| 原子写 | 先写临时文件再 rename,避免写一半损坏 |
| 文件锁 | 写操作前获取锁,避免并发写冲突 |
| 一致性 | 注册表条目与 DataDir 下站点产物目录一一对应,删除站点同时清理产物目录 |
站点名与域名唯一性
name 与 domain 各自全局唯一,注册时校验,冲突即拒绝。
