60 lines
2.3 KiB
Markdown
60 lines
2.3 KiB
Markdown
# Bell Windows 运行说明
|
||
|
||
Bell Windows 包包含独立后端、GoAdmin 管理端静态资源和启动、停止、检查脚本。正式运行需要独立 PostgreSQL;包内不提供默认账号、密码、JWT secret 或数据库。
|
||
|
||
## 配置
|
||
|
||
编辑 `config\bell.env`:
|
||
|
||
```text
|
||
BELL_HOST=127.0.0.1
|
||
BELL_PORT=18090
|
||
BELL_WEB_HOST=127.0.0.1
|
||
BELL_WEB_PORT=18091
|
||
BELL_DATABASE_URL=host=127.0.0.1 port=5432 user=bell dbname=bell sslmode=disable
|
||
BELL_JWT_SECRET=<至少 32 字符的独立随机值>
|
||
BELL_BOOTSTRAP_USERNAME=<仅首次迁移使用>
|
||
BELL_BOOTSTRAP_PASSWORD=<仅首次迁移使用,至少 8 字符>
|
||
BELL_AUTO_MIGRATE=true
|
||
BELL_SYNTHETIC_EVENTS_ENABLED=false
|
||
```
|
||
|
||
不要把真实配置提交到 Git。首次迁移成功后,建议从进程环境中移除 `BELL_BOOTSTRAP_PASSWORD`;它不会写入明文数据库。
|
||
|
||
## 启动、检查和停止
|
||
|
||
```bat
|
||
check-bell.bat
|
||
start-bell.bat
|
||
check-bell.bat -Running
|
||
stop-bell.bat
|
||
```
|
||
|
||
浏览器访问 `http://127.0.0.1:18091/`。`BELL_PORT` 是仅供本机 Web 网关访问的后端端口;`BELL_WEB_PORT` 是用户访问入口。启动脚本默认先执行幂等数据库迁移,再启动后端和 Web 网关;任一步失败都会返回非零退出码。
|
||
|
||
`stop-bell.bat` 只按包内 PID 文件和启动命令行核对后停止本包进程树,不按端口终止未知进程。运行日志位于 `runtime\logs`,不得包含密码、JWT 或登录 token。
|
||
|
||
## 构建和包审计
|
||
|
||
从仓库根目录运行:
|
||
|
||
```powershell
|
||
Bell\scripts\build\build-windows.bat
|
||
pwsh -NoProfile -File Bell\scripts\build\test-package.ps1 -PackageRoot Bell\dist\bell-windows-amd64
|
||
```
|
||
|
||
输出:
|
||
|
||
- `Bell\dist\bell-windows-amd64\`
|
||
- `Bell\dist\bell-windows-amd64.zip`
|
||
|
||
包内 `VERSION.txt`、`MANIFEST.sha256` 和 `LICENSES\` 分别记录源码提交、工具链、文件摘要、GoAdmin 来源及 MIT 许可证。
|
||
|
||
## 常见错误
|
||
|
||
- `BELL_DATABASE_URL is required`:设置独立 PostgreSQL 连接串。
|
||
- `PostgreSQL is unreachable`:启动 PostgreSQL,并检查地址和端口。
|
||
- `BELL_JWT_SECRET must contain...`:生成至少 32 字符、只供 Bell 使用的随机值。
|
||
- `port ... is already in use`:停止已有 Bell,或修改后端/Web 端口。
|
||
- `Bell database migration failed`:检查数据库是否存在、用户权限及迁移日志;不要删除已有 Event、Alert 或生命周期事实。
|