168946b962
online-builder / Explore-Gitea-Actions (push) Has been cancelled
Details
Goreleaser / goreleaser (push) Has been cancelled
Details
|
||
---|---|---|
.gitea/workflows | ||
api | ||
app | ||
cmd/manage | ||
configs | ||
docs | ||
internal | ||
pkg/cache | ||
third_party | ||
.air.toml | ||
.gitignore | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.md | ||
docker-compose.yaml | ||
go.mod | ||
go.sum | ||
go.work.sum | ||
openapi.yaml | ||
start.sh |
README.md
Kratos Project Template
Install Kratos
go install github.com/go-kratos/kratos/cmd/kratos/v2@latest
Install this repository
拉取
kratos new helloworld -r https://gitee.com/kong-xiaoan/kratos-layout
proto 生成
kratos proto add api/demo/demo.proto
服务端
kratos proto server api/course/course.proto -t app/course/internal/service
大仓
kratos new app/course --nomod -r https://gitee.com/kong-xiaoan/kratos-layout
Create a service
# Create a template project
kratos new server
cd server
# Add a proto template
kratos proto add api/server/server.proto
# Generate the proto code
kratos proto client api/server/server.proto
# Generate the source code of service by proto file
kratos proto server api/server/server.proto -t internal/service
go generate ./...
go build -o ./bin/ ./...
./bin/server -conf ./configs
Generate other auxiliary files by Makefile
# Download and update dependencies
make init
# Generate API files (include: pb.go, http, grpc, validate, swagger) by proto file
make api
# Generate all files
make all
Automated Initialization (wire)
# install wire
go get github.com/google/wire/cmd/wire
# generate wire
cd cmd/server
wire
Docker
# build
docker build -t <your-docker-image-name> .
# run
docker run --rm -p 8000:8000 -p 9000:9000 -v </path/to/your/configs>:/data/conf <your-docker-image-name>
swag init -g cmd/manage/main.go