/grpc-scala-microservice-kit

A starter kit for building microservices using gRPC and Scala

Primary LanguageScalaApache License 2.0Apache-2.0

gRPC Scala Microservice Kit

A starter kit for building microservices using gRPC and Scala.

The gRPC server is set up to use TLS out of the box. Mutual authentication is also implemented.

User sessions are propagated as JSON Web Tokens through the Authorization HTTP header using the Bearer schema. JWTs are signed and verified using RS256.

Configuration

The application can be configured through environment variables.

Utility scripts are provided to generate keys and SSL assets.

Building

To build Docker images for the microservice:

make

To build the Docker images and push them to the registry:

make push

Running Tests

make test

Deployment

A Helm chart is provided for deployment to a Kubernetes cluster. To run the deployment against your current Kubernetes context:

make deploy