Skip to content

Repository files navigation

Kubernetes Microservices Deployment

Kubernetes manifests for deploying a multi-tier microservices application, covering the full stack from ingress through to persistent data services.

Architecture

Client (React) ──┐ ├──> nginx ingress ──> API service ──> MongoDB Web API ─────────┘ └──> MySQL

Components

Manifest Purpose
nginx-deployment.yaml / nginx-service.yaml Reverse proxy and load balancing
ingress.yaml / deploy.yaml nginx ingress controller and routing rules
client-deployment.yaml / client-service.yaml Front-end application
api-deployment.yaml / api-service.yaml Application API
webapi-deployment.yaml / webapi-service.yaml Secondary web API
emongo-deployment.yaml / emongo-service.yaml MongoDB
emartdb-deployment.yaml / emartdb-service.yaml MySQL
nginx-config.yaml ConfigMap for nginx

Prerequisites

  • A running Kubernetes cluster (minikube, k3s or managed)
  • kubectl configured against that cluster
  • nginx ingress controller available

Deploying

kubectl apply -f deploy.yaml          # ingress controller
kubectl apply -f .                    # application manifests

Verifying

kubectl get pods
kubectl get svc
kubectl get ingress
kubectl logs -l app=api

Notes

Built while learning Kubernetes service discovery and ingress routing. Secrets and environment-specific values are intentionally excluded — supply them via a Secret or ConfigMap for your own environment.

About

Kubernetes manifests for a multi-tier microservices application — API, client, MongoDB, MySQL and nginx ingress.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors