gozero的指令
快速创建api服务
在当前目录下会新建一个xxx目录
goctl api new xxx
根据api文件生成api服务
goctl api go -api xxx.api -dir .
根据API文件生成markdown文档
# api文件需要配合@doc使用,比如
# service user-api {
# @doc "用户登录"
# @handler login
# post /user/login (LoginReq) returns (LoginReply)
# }
# 生成文档
goctl api doc --dir . --o ../doc
生成如下文档:
快速创建rpc服务
在当前目录下会新建一个xxx目录
goctl rpc new xxx
通过指定proto生成rpc服务
goctl rpc protoc xxx.proto --go_out=. --go-grpc_out=. --zrpc_out=.
通过ddl sql建立model
goctl model mysql ddl -src user.sql -dir . -c
通过数据库建立model
goctl model mysql datasource -url="user:password@tcp(127.0.0.1:3306)/database" -table="*" -dir="./model"
生成Dockerfile
#xxx.go是服务的main文件
goctl docker -go xxx.go
# 打包镜像
docker build -t xxx:v1 -f service/xxx/Dockerfile .
生成k8s部署文件
# 这里我们以 redis:6-alpine 镜像为例
goctl kube deploy --name redis -namespace adhoc -image redis:6-alpine -o redis.yaml -port 6379 -nodePort 30379
# 部署
kubectl apply -f redis.yaml