58 lines
1.3 KiB
Markdown
58 lines
1.3 KiB
Markdown
# Kra
|
|
|
|
Kra 是基于 Kratos 生命周期与 Wire 依赖注入、使用 Gin 提供管理端 HTTP API 的前后端管理系统。
|
|
|
|
## 目录
|
|
|
|
```text
|
|
cmd/kratos-admin/ 服务入口与 Wire
|
|
configs/ 运行配置
|
|
internal/biz/ 领域对象、用例和仓储接口
|
|
internal/data/ 数据库、缓存、对象存储及仓储实现
|
|
internal/server/ Gin 服务、路由和定时任务调度
|
|
internal/service/ HTTP 输入输出与领域对象转换
|
|
web/ Vue 管理端
|
|
```
|
|
|
|
## 启动后端
|
|
|
|
先修改 `configs/config.yaml`。首次启动时,如果目标数据库不可用,服务会保留初始化接口;在管理端初始化页面完成建库、建表和种子数据写入后即可登录。
|
|
|
|
```shell
|
|
go run ./cmd/kratos-admin -conf ./configs
|
|
```
|
|
|
|
默认 HTTP 地址为 `http://127.0.0.1:8000`。生产环境必须替换 JWT 签名密钥和数据库凭据。
|
|
|
|
## 启动前端
|
|
|
|
```shell
|
|
cd web
|
|
pnpm install
|
|
pnpm dev
|
|
```
|
|
|
|
构建产物和依赖目录 `web/dist/`、`web/node_modules/` 已加入 Git 忽略规则。
|
|
|
|
## 生成代码
|
|
|
|
修改 `internal/conf/conf.proto` 后执行:
|
|
|
|
```shell
|
|
make config
|
|
```
|
|
|
|
修改 Wire Provider 或构造函数后执行:
|
|
|
|
```shell
|
|
go generate ./cmd/kratos-admin
|
|
```
|
|
|
|
## 检查
|
|
|
|
```shell
|
|
go test ./...
|
|
go vet ./...
|
|
cd web && pnpm lint && pnpm build
|
|
```
|