快速上手
你需要先装好
| 依赖 | 版本要求 | 用途 |
|---|---|---|
| Python | 3.12+ | 运行开发脚本 |
| uv | 最新 | Python 版本管理和脚本执行 |
| Docker | 能跑容器就行 | PostgreSQL、Redis |
| Cargo | Rust 稳定版 | 编译后端 |
| npm | 最新 | 前端依赖 |
uv 的安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.12
uv python pin 3.12Windows 用户可以直接 powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex",或者去 GitHub Releases 下安装包。
启动服务
- 启动 PostgreSQL 和 Redis 容器,然后启动后端和前端:
# 1. 启动 PostgreSQL
docker run -d --name herald-postgres \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=herald \
-p 5432:5432 \
postgres:18-alpine
# 2. 启动 Redis
docker run -d --name herald-redis \
-p 6379:6379 \
redis:8.4-alpine
# 3. 启动后端(会自动运行迁移)
cd backend
cargo run --bin herald-app
# 4. 启动前端(另一个终端)
cd frontend
npm install
npm run dev验证
后端健康检查:
curl http://localhost:8080/health在浏览器打开 http://localhost:3000 访问前端,Vite 提供热更新。
如果后端启动失败,先检查 PostgreSQL 和 Redis 容器是不是在跑(docker ps),再检查 config.toml 里的连接字符串。
下一步
服务跑起来后,打开 http://localhost:3000 进入前端界面。创建 realm 时指定的管理员用户具有超级管理员权限,可以邀请用户、配置权限。具体操作见架构了解各模块的职责。
Realm 通常由 Admin Realm 管理员在管理控制台创建。admin realm 还可以开启公共自助开通入口:在 admin realm 的 Settings → 平台 → 允许公开自助开通 里切换开关。开启后访客打开 /admin/auth/signup 填表即可当场开通一个新 realm,并成为其 admin。该入口默认关闭(配置缺失即视为关闭);公开端点由同 IP 24 小时限额(2 个 realm)和 Cloudflare Turnstile(绑定 admin-web-console 这个 Client App)防护。