This project is an experiment with how modern web applications would look like when using Rust and Kubernetes. It is a simple web application that returns a new quotation for each request.
There are two isolated microservices. The frontendservice provides one endpoint that clients (browsers) can connect to. The quotationservice is a grpc server, that answers with a quotation for each request. Both the microservices use fully asynchronous Rust libraries and are based on tokio.
The repo requires git-lfs.
$ git clone https://github.com/caulagi/rust-k8s-demo
# make sure git lfs files have been cloned; otherwise git lfs pull will get the file
$ ls -lh databaseservice/data
total 15424
-rw-r--r-- 1 pradip.caulagi staff 7.5M Feb 27 15:55 data.sql
Setup a local kubernetes cluster using kind.
$ go install sigs.k8s.io/kind@v0.20.0
$ kind create cluster --config kind-config.yaml
Install skaffold and run the application
$ make bootstrap
$ skaffold run --tail
QED - Go to http://localhost. See setup.md for more options for development setup.
This project is licensed under MIT.