Favicon of Minikube

Minikube

minikube runs a local single- or multi-node Kubernetes cluster on macOS, Linux, and Windows for development, testing, and CI.

Minikube website screenshot
Minikube GitHub repository preview

minikube runs a local Kubernetes cluster on your machine, whether that's a laptop or a CI runner. It's built for developers who need a real Kubernetes environment to build and test applications without provisioning a cloud cluster. If you work with Kubernetes manifests, Helm charts, or operators and want fast local iteration, this is the tool for that job.

The project is maintained under the Kubernetes SIG Cluster Lifecycle umbrella and runs the latest stable Kubernetes release, aiming to support as many standard Kubernetes features as possible on a local machine.

Key features

  • LoadBalancer support: expose services with minikube tunnel, mimicking cloud LoadBalancer behavior locally.
  • Multi-cluster support: spin up multiple named clusters with minikube start -p <name> for isolated testing.
  • NodePort access: reach services directly via minikube service.
  • Persistent volumes: test stateful workloads with local persistent storage.
  • Built-in dashboard: launch the Kubernetes dashboard with a single minikube dashboard command.
  • Configurable container runtimes: pick your runtime via minikube start --container-runtime.
  • Custom apiserver/kubelet flags: tune Kubernetes defaults through command-line options.
  • CI compatibility: runs in common CI environments, useful for integration testing pipelines.
  • Addon marketplace: enable community-shared configurations for common services with minikube addons.
  • GPU support: NVIDIA and AMD GPU passthrough for local machine learning workloads.
  • Filesystem mounts: mount local directories into the cluster for live code syncing.

Ideal use cases

minikube fits developers building and testing applications destined for Kubernetes who need a disposable, local cluster: testing manifests, debugging operators, validating Helm charts, or running integration tests in CI without spinning up cloud infrastructure. It's a good fit for learning Kubernetes hands-on, since you get a full-featured cluster without cloud costs or account setup.

It also works well for GPU-backed local ML experiments where you need Kubernetes scheduling semantics but not a production-scale cluster, and for CI pipelines that need a throwaway Kubernetes environment per test run.

It is not a good fit for production workloads, multi-tenant environments, or scenarios requiring high availability, since minikube is explicitly a single-purpose local development tool. If you need to simulate large-scale cluster behavior, load testing across many real nodes, or production-grade networking and security policies, a managed cloud cluster or a heavier local multi-node solution is more appropriate. Teams needing strict compliance or production parity should treat minikube strictly as a dev/test tool, not a staging replacement.

Installation

The full, platform-specific installation instructions live in the Getting Started Guide, since setup differs across macOS, Linux, and Windows and depends on your chosen driver (Docker, VM, etc.).

Once installed, the basic workflow is:

minikube start
minikube dashboard

minikube start provisions the local cluster (choosing a driver automatically or via --driver flag), and minikube dashboard opens the Kubernetes web UI.

You can also try minikube without installing anything locally by using GitHub Codespaces:

# Open in a browser via the Codespaces badge on the repo,
# then inside the Codespace run:
minikube start
minikube dashboard

This launches a preconfigured Codespace where you run the same commands. minikube also works inside VS Code Dev Containers for a similar zero-local-setup experience.

For multi-cluster setups, use named profiles:

minikube start -p my-second-cluster

And to enable an addon (for example, the ingress controller):

minikube addons enable ingress

Check the official documentation site for driver-specific prerequisites (like Docker or a hypervisor) before running minikube start, since the exact requirements vary by operating system.

Frequently asked questions

Share:

Stars
32.2K
Forks
5.4K
Last commit
19 hours ago
Repository age
11 years
License
Apache-2.0
Self-hosted
No
Activity score
85/100
View Repository
Ad
Favicon

 

  
 

Similar to Minikube

Favicon

 

  
 
Favicon

 

  
 
Favicon