This repo is a playground for simple Kubernetes project. It uses Helm Charts to deploy and manage Kubernetes configuration files.
This project is far from being ready for production!
The microservices are written in different languages. They do depend on each other to demonstrate more complex infrastructure.
calc
(NodeJS) - is a REST API that supports: addition, subtraction, multiplication and division of two integersadd
(Golang) - is a microservice that provides API for addition of two integerssub
(Golang) - is a microservice that provides API for subtraction of two integersmul
(Python 3.x) - is a microservice that provides API for multiplication of two integersdiv
(Python 3.x) - is a microservice that provides API for division of two integers
There are 5 microservices in total: 1 public and 4 internal. The calc
microservice acts as API Gateway and uses other services to provide a result to given mathematical equation.
This project requires kubectl
, minikube
and helm
.
minikube create
/minikube start
eval $(minikube docker-env)
docker-compose build
minikube addons enable ingress
chmod a+x deploy.sh
./deploy.sh
API=$(minikube ip)
curl "https://$API/" --insecure
curl "https://$API/add/2/3" --insecure
curl "https://$API/add/3/2" --insecure
curl "https://$API/sub/12/4" --insecure
curl "https://$API/mul/4/2" --insecure
curl "https://$API/mul/19/18" --insecure
curl "https://$API/div/10/5" --insecure
curl "https://$API/div/10/4" --insecure