Skip to content

A modern take on microservices in a cloud native world

License

Notifications You must be signed in to change notification settings

JordanJunn/rust-k8s-demo

Repository files navigation

fortune-k8s-demo

Build Status

This project is an experiment with how modern web applications would look like when using Rust and Kubernetes. It is based on microservices-demo.

It is a simple web application that returns a new fortune cookie for each request.

There are two isolated microservices. The frontendservice provides one endpoint that clients (browsers) can connect to. The fortuneservice is a grpc server, that answers with 'fortune cookies' for each request. Both the microservices use fully asynchronous Rust libraries and are based on tokio.

Features

  • Microservices talking to each other using grpc
  • Local dev setup using skaffold
  • CI
  • CD
  • Service mesh and open tracing

Getting started

  • Setup a local kubernetes cluster, using Kubernetes for docker-for-mac (for Linux or other options in getting started, see setup).

  • Install skaffold and run the application

    $ kubectl create secret generic postgres-password --from-literal=pgpassword=1234
    $ skaffold run --tail

QED - Go to http://localhost

LICENSE

This project is licensed under MIT.

About

A modern take on microservices in a cloud native world

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 60.4%
  • Dockerfile 24.5%
  • Makefile 15.1%