feat: 引入版本化数据库迁移与 Schema 启动门禁
This commit is contained in:
@@ -173,7 +173,7 @@ silk/
|
||||
│ ├─ cmd/server/main.go # 入口
|
||||
│ ├─ internal/
|
||||
│ │ ├─ config/ # 环境变量配置
|
||||
│ │ ├─ database/ # GORM 数据库连接与自动迁移
|
||||
│ │ ├─ database/ # GORM 数据库连接与版本化迁移
|
||||
│ │ ├─ handler/ # HTTP handler(auth/device/alarm/video 等)
|
||||
│ │ ├─ middleware/ # JWT 鉴权、RBAC 权限、CORS、限流、安全头
|
||||
│ │ ├─ model/ # GORM 数据模型 + 权限种子数据
|
||||
@@ -426,7 +426,7 @@ Payload 示例:
|
||||
|
||||
### 10.1 PostgreSQL(业务数据)
|
||||
|
||||
保存用户、蚕房、设备、传感器、阈值、告警、摄像头、录像片段、审计日志、权限等业务数据。GORM 自动迁移建表,系统启动时自动初始化权限种子数据。
|
||||
保存用户、蚕房、设备、传感器、阈值、告警、摄像头、录像片段、审计日志、权限等业务数据。系统启动时先执行 `server-go/migrations/` 下的版本化 SQL 迁移,再初始化权限种子数据;生产环境禁用 AutoMigrate。
|
||||
|
||||
```env
|
||||
PG=postgresql://postgres:pan@localhost:5432/silk
|
||||
@@ -499,6 +499,8 @@ C:\msys64\usr\bin\sshpass.exe -p "pan" C:\msys64\usr\bin\ssh.exe -o StrictHostKe
|
||||
| 变量 | 默认值 | 说明 |
|
||||
|------|--------|------|
|
||||
| `PG` | `postgresql://postgres:pan@localhost:5432/silk` | PostgreSQL 连接串 |
|
||||
| `APP_ENV` | `development` | 运行环境;生产环境应设为 `production` |
|
||||
| `ALLOW_DEV_AUTOMIGRATE` | `false` | 仅开发环境可显式开启 AutoMigrate,生产忽略此开关 |
|
||||
| `REDIS` | `redis://:pan@localhost:6379` | Valkey/Redis 连接串 |
|
||||
| `JWT_SECRET` | `silk-secret-please-change-me` | JWT 签名密钥 |
|
||||
| `JWT_EXPIRES_IN` | `2h` | JWT 有效期 |
|
||||
|
||||
Reference in New Issue
Block a user