docs(README): 更新项目文档- 添加项目简介部分
-修正部分功能描述 - 新增开发一个模块的流程说明 - 新增一次部署的流程说明
This commit is contained in:
parent
9ae4838986
commit
9d82d63a64
31
README.md
31
README.md
@ -2,9 +2,11 @@
|
|||||||
|
|
||||||
一个学习项目
|
一个学习项目
|
||||||
|
|
||||||
|
## 简介
|
||||||
|
|
||||||
使用 kitex 框架,实现了
|
使用 kitex 框架,实现了
|
||||||
|
|
||||||
* rpc 调用(kitex)
|
* rpc 调用 (kitex)
|
||||||
* hertz 作为 facade 层
|
* hertz 作为 facade 层
|
||||||
* 服务注册与发现(consul)
|
* 服务注册与发现(consul)
|
||||||
* 配置动态加载(viper + consul)
|
* 配置动态加载(viper + consul)
|
||||||
@ -12,4 +14,29 @@
|
|||||||
* helm 模板 (manifest 分支)
|
* helm 模板 (manifest 分支)
|
||||||
* k8s 部署
|
* k8s 部署
|
||||||
* cicd 流水线
|
* cicd 流水线
|
||||||
* GitOps 部署 (argocd)
|
* GitOps 部署(argocd)
|
||||||
|
|
||||||
|
## 开发一个模块的流程
|
||||||
|
|
||||||
|
1. 编写 idl 文件
|
||||||
|
2. Makefile 中,从已有的模块复制一份,修改模块名
|
||||||
|
3. 使用 cwgo 工具生成代码(运行刚刚写的 Makefile)
|
||||||
|
4. 定义数据库 model
|
||||||
|
5. 创建 cmd/migrate/migrate.go 文件,编写迁移代码(参见 gorm)
|
||||||
|
6. 运行 cmd/migrate/migrate.go,创建数据库表
|
||||||
|
7. 创建 cmd/gorm_gen/gen.go 文件,编写业务 sql(使用注释,参见 gorm gen)
|
||||||
|
8. 运行 cmd/gorm_gen/gen.go,生成数据库操作代码
|
||||||
|
9. 修改 config/config.go,改成自己的配置(viper+consul)
|
||||||
|
10. 修改 日志配置,改成自己的配置(直接打印到 std)
|
||||||
|
11. 修改 服务端口,改成一个未被占用的端口(便于在本地测试)
|
||||||
|
12. 修改 biz/dal/mysql/mysql.go,改成自己的dsn,并初始化 gen 的 Q 对象
|
||||||
|
13. 到 biz/service 下完善自己的业务逻辑
|
||||||
|
14. 编写 dockerfile
|
||||||
|
|
||||||
|
## 一次部署的流程
|
||||||
|
|
||||||
|
1. 代码推送到 main 分支
|
||||||
|
2. 构建镜像并推送到镜像仓库(cicd,下同)
|
||||||
|
3. 把镜像 tag 更新到 manifest 仓库中的 values.yaml
|
||||||
|
4. ArgoCD 自动同步
|
||||||
|
5. 部署完成
|
||||||
|
Loading…
x
Reference in New Issue
Block a user