版本需求

需要使用 kratos v2.0.0 以上版本;

环境准备

需要安装好对应的依赖环境,以及工具:

建议开启GO111MODULE

  1. go env -w GO111MODULE=on

如果拉取依赖遇到网络问题,建议配置GOPROXY

安装

安装 kratos 命令工具

go get 安装

  1. go get -u github.com/go-kratos/kratos/cmd/kratos/v2@latest

go install 安装

  1. go install github.com/go-kratos/kratos/cmd/kratos/v2
  2. # go 1.16版本以上需要指定版本号或使用最新版
  3. go install github.com/go-kratos/kratos/cmd/kratos/v2@latest

源码编译安装

  1. git clone https://github.com/go-kratos/kratos
  2. cd kratos
  3. make install

创建项目

  1. # 创建项目模板
  2. kratos new helloworld
  3. cd helloworld
  4. # 拉取项目依赖
  5. go mod download
  6. # 生成proto模板
  7. kratos proto add api/helloworld/helloworld.proto
  8. # 生成proto源码
  9. kratos proto client api/helloworld/helloworld.proto
  10. # 生成server模板
  11. kratos proto server api/helloworld/helloworld.proto -t internal/service

项目编译和运行

  1. # 生成所有proto源码、wire等等
  2. go generate ./...
  3. # 运行项目
  4. kratos run

测试接口

  1. curl 'http://127.0.0.1:8000/helloworld/kratos'
  2. 输出:
  3. {
  4. "message": "Hello kratos"
  5. }

项目模板

Kratos 是通过在线 github 仓库模板,并且进行拉取创建项目,对应模板地址: