# mt-zero **Repository Path**: x-four/mt-zero ## Basic Information - **Project Name**: mt-zero - **Description**: MT团队基于go-zero更改的适应于自身业务的golang框架 - **Primary Language**: Go - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 17 - **Forks**: 4 - **Created**: 2021-08-02 - **Last Updated**: 2024-05-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #mt-zero微服务工程框架 ##项目环境 ``` go1.15 go-zero gomod gorm goimoprts etcd mysql redis GNU Make 4.3 goreman 0.2.1 ``` ##项目目录 ``` src 项目 gateway 网关层 util 依赖包 bin 编译后执行文件,gitignore go.mod gomod文件 Makefile make命令文件 Procfile goreman命令文件 run.sh 本地执行项目文件 docker 容器化镜像文件 ``` ##初始化项目 ``` 请执行根目录 init.sh 脚本 ``` ##response模板调整 ``` go-zero的响应模板调整 goctl template init cp src/util/tpl/handler.tpl ~/.goctl/api/handler.tpl ``` ##make命令 ``` make gateway 解析api文件并编译gateway make {project} 解析proto文件并编译项目,例如meeting make newrpc PROJECT={project} 创建一个新微服务并生成proto,例如app make rpc PROJECT={project} 解析指定服务微服务proto,例如app make build PROJECT={project} 编译指定服务微服务,例如app make model PROJECT={project} 预生成mysql表映射代码,前提是在微服务目录下创建sql/{mysql}.sql文件 ``` ##goreman命令 ``` 多项目启动软件 goreman start 启动Procfile中的服务 goreman run status 启动进程信息 ``` ##gateway编写规则 ``` 所有response如果有err,必须使用response.ErrXXXX.WithMessage("error msg") 用来规范对外输出的code和错误信息 ```