DEV Community

Shiva Charan
Shiva Charan

Posted on

๐Ÿš€ What is Minikube?

  • Minikube is a lightweight tool that lets you run Kubernetes locally on your laptop or workstation.
  • It creates a single-node Kubernetes cluster that behaves almost exactly like a real Kubernetes cluster โ€” but without needing cloud resources or multi-node infrastructure.

๐Ÿง  Why Do People Use Minikube?

Minikube is mainly used for:

โœ… Learning Kubernetes

You can practice all kubectl commands, create Pods, Deployments, Services, and ConfigMaps โ€” all on your machine.

โœ… Local Development

Developers use Minikube to:

  • Test Kubernetes manifests (YAML)
  • Check application behavior before deploying to cloud
  • Debug issues locally

โœ… Running Kubernetes Without Cloud Costs

You donโ€™t need AWS EKS, GKE, AKS, or a cluster of VMs.
Just your laptop + Minikube = full Kubernetes experience.


โš™๏ธ How Minikube Works (Simple Explanation)

Minikube runs a VM or container-based node that contains:

  • kube-apiserver
  • kubelet
  • etcd
  • controllers
  • scheduler
  • and all other Kubernetes components

It basically gives you one node that acts as:

  • Master (control plane)
  • Worker (node)

Thatโ€™s why itโ€™s perfect for learning, testing, and development.


๐Ÿงฉ Minikube Architecture (Simple)

When you run:

minikube start
Enter fullscreen mode Exit fullscreen mode

Minikube:

  1. Creates a single-node Kubernetes cluster
  2. Installs Kubernetes components
  3. Sets up kubectl automatically
  4. Allows you to deploy workloads immediately

๐Ÿ› ๏ธ Key Features of Minikube

Feature Description
Add-ons Ingress, Metrics Server, Dashboard, Storage Provisioner
Drivers Can run with Docker, VirtualBox, Hyper-V, KVM, VMware
Multi-node Support Can now run multi-node clusters (optional)
LoadBalancer Simulation minikube tunnel simulates cloud LB
Dashboard Built-in Kubernetes Dashboard GUI

๐Ÿ–ฅ๏ธ Example: Start Minikube and Deploy an App

minikube start

kubectl create deployment myapp --image=nginx

kubectl expose deployment myapp --type=NodePort --port=80

minikube service myapp
Enter fullscreen mode Exit fullscreen mode

This will open your app in a browser using Kubernetes Service networking.


๐Ÿ Summary

Minikube = local Kubernetes made easy.

Itโ€™s ideal for beginners, developers, and anyone who wants to learn Kubernetes without cloud cost or complexity.

Top comments (0)