README.md 998 Bytes
Newer Older
kzkzzzz's avatar
kzkzzzz committed
1
### 采用单体仓库monorepo方案, 基于go-micro构建微服务, 注册中心使用consul
kzkzzzz's avatar
kzkzzzz committed
2 3 4 5 6 7 8 9 10 11 12 13 14 15
#### https://github.com/asim/go-micro

### 相关目录说明
```text
api 存放对应服务的proto文件
third_party 存放第三方的proto文件
service 一个目录一个服务
common 通用的工具类
script 相关shell脚本
tool 相关工具服务
tool/gateway 开发调试网关, 例如:  go run gateway.go -c 192.168.233.1:8500
``` 


kzkzzzz's avatar
kzkzzzz committed
16
#### 初始化项目, 下载依赖工具, go版本1.18以上
kzkzzzz's avatar
kzkzzzz committed
17
```shell
kzkzzzz's avatar
kzkzzzz committed
18 19 20 21 22 23 24 25 26 27
# 开启go module
go env -w GO111MODULE=on
# 设置国内镜像
go env -w GOPROXY=https://goproxy.cn,directc

# 下载依赖
go mod download
go mod tidy

# 下载相关命令工具
kzkzzzz's avatar
kzkzzzz committed
28 29 30 31 32
make init
```

#### 新建项目, 主要是复制demo项目模板并进行替换
```shell
33
# 例如创建user服务
kzkzzzz's avatar
kzkzzzz committed
34 35 36 37 38 39 40 41 42 43 44 45 46 47
make gen project=user 
```

#### 开发环境运行服务
```shell
# 运行demo服务, 修改代码自动热重载
make run project=demo
```

#### 编译
```shell
make build project=demo
```