This Project deploys a simple microservice (frontend and backend ) application to a Kubernetes Cluster with the help of a Package Manager called Helm Chart.
Clone the project
git clone https://github.com/Martins-Ops/microservice_app_helm_nginx.git
Go to the project directory
cd frontend
Install dependencies
npm install
Start the server
npm run start
Clone the project
Go to the project directory
cd backend
Install dependencies
npm install
Start the server
npm run start
Install Helm CLI
Install Kubectl
Install Minikube for Kubernetes Provisioning
Install Docker
The Ingress is a Kubernetes resource that lets you configure an HTTP load balancer for applications running on Kubernetes, represented by one or more Services. Such a load balancer is necessary to deliver those applications to clients outside of the Kubernetes cluster.
Install Using Helm Chart
helm repo add nginx-stable https://helm.nginx.com/stable
helm repo update
helm install my-release nginx-stable/nginx-ingress
To deploy this project to Kubernetes run in the root directory
minikube start
helm install <name_of_deployent> ./deploy_chart
If Minikube was started with Docker in a WSL2 environment run the command below
minikube tunnel
For this Project localhost was used for hosting the application on Nginx, we can use a Domain Name instead
If we used a Domain name then we would copy the following to "etc/host"
<minikube_ip> <domain_name>
Frontend
Backend