How to Install and Use Minikube: Setup and Essential
Install Minikube on macOS, Linux or Windows and learn the essential commands to manage your local Kubernetes cluster. Uses the Docker driver by default. No VM required.
4 lessons · 9 min · Beginner
Written by
Marketing Team at Civo
Written by
Marketing Team at Civo
Minikube runs a single-node Kubernetes cluster locally on your machine. It is the fastest way to get a working cluster for learning, development, and testing without needing a cloud account. Minikube uses Docker as the default driver, so no virtual machine setup is required on modern systems.
Use Minikube when you want to learn Kubernetes locally or test configurations before deploying to a cloud cluster. Use a managed cluster like Civo when you need a multi-node environment, persistent storage, or a production-grade setup.
Before installing Minikube, install kubectl first. Minikube provides the cluster but kubectl is the tool you use to interact with it. The previous lesson in this chapter covers kubectl installation.
Prerequisites
- 2 CPUs or more
- 2GB of free memory
- 20GB of free disk space
- Docker Desktop or Docker Engine installed and running
Install Minikube
macOS
brew install minikube
Linux
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64sudo install minikube-linux-amd64 /usr/local/bin/minikube
Windows
choco install minikube
Verify the installation:
minikube version
Expected output:
minikube version: v1.32.0commit: 8220a6eb95f0a4d75f7f2d7b14cef975f050512
Start your cluster
Minikube uses Docker as the default driver. Docker Desktop or Docker Engine must be running before you start:
minikube start
Expected output:
* minikube v1.32.0 on Darwin 14.0* Automatically selected the docker driver* Starting control plane node minikube in cluster minikube* Pulling base image ...* Preparing Kubernetes v1.28.3 on Docker 24.0.7 ...* Done! kubectl is now configured to use "minikube" cluster
Other drivers are available if you need them. Pass --driver=virtualbox, --driver=hyperv, or --driver=parallels to use an alternative. For most users the Docker driver works without any additional configuration.
Verify the cluster is running:
minikube status
Expected output:
minikubetype: Control Planehost: Runningkubelet: Runningapiserver: Runningkubeconfig: Configured
Useful start flags
Customise your cluster at start time:
minikube start --cpus=4 --memory=8g --kubernetes-version=v1.28.0 --driver=docker
Set defaults so you do not need to pass flags every time:
minikube config set memory 8192minikube config set cpus 4
Essential commands
Stop the cluster without deleting it
minikube stop
Data and state are preserved. Run minikube start to resume.
Delete the cluster and all its data
minikube delete
Open the Kubernetes dashboard in your browser
minikube dashboard
List all available addons
minikube addons list
Enable an addon
minikube addons enable metrics-serverminikube addons enable ingress
These two addons are recommended for most users. metrics-server enables kubectl top commands. ingress adds an nginx ingress controller to your local cluster.
Get the URL for a service
minikube service <service-name> --url
Expose LoadBalancer services locally
minikube tunnel
Run this in a separate terminal. It creates a network route that gives LoadBalancer services an accessible IP address on your local machine.
Load a local Docker image into Minikube
minikube image load <image-name>
Use this to test locally built images without pushing them to a registry. In your pod spec, set imagePullPolicy: Never to prevent Kubernetes from trying to pull the image remotely.
View Minikube logs
minikube logs
Useful for diagnosing cluster startup failures.
View all resources across all namespaces
kubectl get all -A

Marketing Team at Civo
Civo is the Sovereign Cloud and AI platform designed to help developers and enterprises build without limits. We bridge the gap between the openness of the public cloud and the rigorous security of private environments, delivering full cloud parity across every deployment. As a team, we are dedicated to providing scalable compute, lightning-fast Kubernetes, and managed services that are ready in minutes. Through CivoStack Enterprise and our FlexCore appliance, we empower organizations to maintain total data sovereignty on their own hardware.
Our mission is to make the cloud faster, simpler, and fairer. By providing enterprise-grade NVIDIA GPUs and streamlined model management, we ensure that high-performance AI and machine learning are accessible to everyone. Built for transparency and performance, the Civo Team is here to give you total control over your infrastructure, your data, and your spend.
Share this lesson