https://www.jianshu.com/p/6942a361e455
go get -u github.com/bilibili/kratos/tool/kratos
提示:安装过程中可能会出现部分包下载失败,可以手动下载包然后拷贝至相应文件目录。
cd $GOPATH/src kratos new kratos-demo cd kratos-demo/cmd go build ./cmd -conf ../configs
打开浏览器访问: http://localhost:8000/kratos-demo/start ,你会看到输出了 Golang 大法好 !!!
kratos new
是快速创建一个项目的命令,执行如下:
kratos new kratos-demo
即可快速在当前目录生成一个叫 kratos-demo
的项目。此外还支持指定owner和path,如下:
kratos new kratos-demo -o YourName -d YourPath
注意, kratos new
默认是不会生成通过 protobuf 定义的 grpc
和 bm
示例代码的,如需生成请加 --proto
,如下:
kratos new kratos-demo -o YourName -d YourPath --proto
特别注意,如果不是MacOS系统,需要自己进行手动安装protoc,用于生成的示例项目 api
目录下的 proto
文件并不会自动生成对应的 .pb.go
和 .bm.go
文件。
如果生成项目的时候并未使用 --proto
,则可以使用命令:
// generate all
kratos tool protoc api.proto
// generate gRPC
kratos tool protoc --grpc api.proto
// generate BM HTTP
kratos tool protoc --bm api.proto
// generate swagger
kratos tool protoc --swagger api.proto
执行对应生成 api.pb.go/api.bm.go/api.swagger.json 源文档。
也可以参考以下说明进行生成: protoc说明
生成脚手架的时候可能产生以下错误:
image.png
从错误可以看出 "google.protobuf.*
包缺失,我们可以在其他位置拷贝到$GOPATH/src中。在$GOPATH中找到相应的文件:
image.png
将相应缺少的文件拷贝至$GOPATH/src下
image.png
然后再次执行: kratos tool protoc api.proto
,执行成功后会在 api
文件夹中生成三个文件:
image.png
在 cmd
文件夹执行命令: go build
如果发生如下错误:
image.png
则找到相应位置删除,然后重新安装。
同样,如果出现包缺失,需要下载到相应位置。
然后执行: cmd.exe -conf ../configs
2019-06-26_105832.png
成功启动后,可以看到启动了两个进程,分别监听8000和9000。