Skip to content

Latest commit

 

History

History
56 lines (47 loc) · 1.08 KB

README.md

File metadata and controls

56 lines (47 loc) · 1.08 KB

Kratos Project Template

Install Kratos

go install github.com/go-kratos/kratos/cmd/kratos/v2@latest

Install gonew

go install golang.org/x/tools/cmd/gonew@latest

Create a service

# Create a template project
gonew github.com/zzhaolei/kratos-mono-layout github.com/zzhaolei/greeter

# or
git clone github.com/zzhaolei/kratos-mono-layout
# and change go.mod module path

cd greeter
# Add a app template
make create app=hello

go generate ./...
go build -o ./bin/ ./...
./bin/hello -conf ./configs

Generate other auxiliary files by Makefile

# Download and update dependencies
make init
# Generate API files (include: pb.go, http, grpc, validate, swagger, errors) 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 app/greeter/cmd/greeter
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>