A starting point project to create todo
-service
$ docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:latest
$ mysql -uroot -proot
$ docker run --name postgres -e POSTGRES_PASSWORD=root -e POSTGRES_USER=root -d postgres:latest
$ cd $GOPATH/src/github.com/pepeunlimited/go-grpc-starter-kit/deployments/
$ docker-compose up -d
$ psql
$ brew install protobuf
$ go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
$ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
Deployments folder contains files for the k8s
environment; service
, deployment
and ingress
. dev
folder have an additional external-mysql-service.yaml
file which allow access from local cluster to external MySQL database.
docker-compose up
spin up the MySQL database for local development
Speed up implementing the database access using ent
.
Of course you can implement repositories with a raw sql statements,
but it is very time consuming and boring repeat x10 times same CRUD functions.
$ cd $PROJECT_ROOT/internal/pkg/
$ go generate ./ent
$ protoc --go_out=.\
--go-grpc_out=. \
todo.proto
$ git submodule update --init
$ cd $PROJECT_ROOT/third_party/temporal-server-docker-compose
$ docker-compose up