2019-02-15 23:07:44 +00:00
# minikube
2017-03-21 04:57:11 +00:00
2017-08-09 02:07:56 +00:00
[![BuildStatus Widget]][BuildStatus Result]
[![GoReport Widget]][GoReport Status]
[BuildStatus Result]: https://travis-ci.org/kubernetes/minikube
[BuildStatus Widget]: https://travis-ci.org/kubernetes/minikube.svg?branch=master
[GoReport Status]: https://goreportcard.com/report/github.com/kubernetes/minikube
[GoReport Widget]: https://goreportcard.com/badge/github.com/kubernetes/minikube
2019-02-16 00:36:36 +00:00
< img src = "https://github.com/kubernetes/minikube/raw/master/images/logo/logo.png" width = "100" >
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
## What is minikube?
2017-03-21 04:57:11 +00:00
2019-02-15 23:24:00 +00:00
minikube implements a local Kubernetes cluster on macOS, Linux, and Windows.
2017-03-21 04:57:11 +00:00
2019-02-16 00:40:03 +00:00
< img src = "https://github.com/kubernetes/minikube/raw/master/images/start.jpg" width = "800" >
2019-02-16 00:36:36 +00:00
2019-02-16 00:39:10 +00:00
Our [goal ](https://github.com/kubernetes/minikube/blob/master/docs/contributors/principles.md ) is to enable fast local development and to support all Kubernetes features that fit. We hope you enjoy it!
2019-02-16 00:36:36 +00:00
2019-02-15 23:07:44 +00:00
## News
2018-10-09 23:26:03 +00:00
2019-02-15 23:24:00 +00:00
* 2019-02-15 - v0.34.0 released! [[download ](https://github.com/kubernetes/minikube/releases/tag/v0.34.0 )] [[release notes ](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md#version-0340---2019-02-15 )]
* 2019-01-18 - v0.33.1 released to address [CVE-2019-5736 ](https://www.openwall.com/lists/oss-security/2019/02/11/2 ) [[download ](https://github.com/kubernetes/minikube/releases/tag/v0.33.1 )] [[release notes ](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md#version-0331---2019-01-18 )]
* 2019-01-17 - v0.33.0 released! [[download ](https://github.com/kubernetes/minikube/releases/tag/v0.33.0 )] [[release notes ](https://github.com/kubernetes/minikube/blob/master/CHANGELOG.md#version-0330---2019-01-17 )]
2018-10-09 23:26:03 +00:00
2019-02-15 23:28:35 +00:00
## Features
2017-03-21 04:57:11 +00:00
2019-02-15 23:28:35 +00:00
minikube runs the official stable release of Kubernetes, with support for standard Kubernetes features like:
2018-09-05 18:48:57 +00:00
2019-02-15 23:28:35 +00:00
* NodePorts - `minikube service`
2019-02-15 22:56:28 +00:00
* Ingress
2019-02-15 23:28:35 +00:00
* [LoadBalancer ](https://github.com/kubernetes/minikube/blob/master/docs/tunnel.md ) - `minikube tunnel`
* [Persistent Volumes ](https://github.com/kubernetes/minikube/blob/master/docs/persistent_volumes.md )
2019-02-15 22:56:28 +00:00
* ConfigMaps
* RBAC
* Secrets
2019-02-15 23:28:35 +00:00
* Dashboard - `minikube dashboard`
* [Multiple container runtimes ](https://github.com/kubernetes/minikube/blob/master/docs/alternative_runtimes.md ) - `start --container-runtime`
2017-03-21 04:57:11 +00:00
2019-02-15 23:28:35 +00:00
minikube also supports features for developer convenience:
2018-07-11 19:05:17 +00:00
2019-02-15 23:07:44 +00:00
* [Addons ](https://github.com/kubernetes/minikube/blob/master/docs/addons.md ) - a marketplace for developers to share configurations for running services on minikube
* [GPU support ](https://github.com/kubernetes/minikube/blob/master/docs/gpu.md ) - for machine learning
* [Filesystem mounts ](https://github.com/kubernetes/minikube/blob/master/docs/host_folder_mount.md )
2019-02-15 23:24:00 +00:00
* Automatic failure analysis
2018-08-17 15:10:00 +00:00
2019-02-15 22:56:28 +00:00
## Community & Documentation
2018-08-17 15:10:00 +00:00
2019-02-15 22:56:28 +00:00
* [**#minikube on Kubernetes Slack** ](https://kubernetes.slack.com ) - Live chat with minikube developers!
2019-02-15 23:07:44 +00:00
* [minikube-users mailing list ](https://groups.google.com/forum/#!forum/minikube-users )
* [minikube-dev mailing list ](https://groups.google.com/forum/#!forum/minikube-dev )
2017-06-22 17:31:57 +00:00
2019-02-15 22:56:28 +00:00
* [**Advanced Topics and Tutorials** ](https://github.com/kubernetes/minikube/blob/master/docs/README.md )
2019-02-15 23:07:44 +00:00
* [Contributing ](https://github.com/kubernetes/minikube/blob/master/CONTRIBUTING.md )
* [Development Guide ](https://github.com/kubernetes/minikube/blob/master/docs/contributors/README.md )
2019-02-15 23:24:00 +00:00
* [Development Roadmap ](https://github.com/kubernetes/minikube/blob/master/docs/contributors/roadmap.md )
2017-10-12 18:20:39 +00:00
2019-02-15 22:56:28 +00:00
## Requirements
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
* 4GB of memory (VM reserves 2GB by default), 32GB of disk space
* An internet connection - preferably one that does not require a VPN or SSL proxy to access the internet
* macOS 10.12 (Sierra) or higher
* Requires a hypervisor, such as:
* hyperkit (recommended)
* VirtualBox
2017-05-03 21:53:51 +00:00
* Linux
2019-02-15 22:56:28 +00:00
* libvirt for the KVM driver, or VirtualBox
2019-02-15 23:07:44 +00:00
* VT-x/AMD-v virtualization must be enabled in BIOS
2019-02-15 22:56:28 +00:00
* Windows 10
2019-02-15 23:07:44 +00:00
* HyperV (Windows 10 Pro) or a 3rd party hypervisor, such as VirtualBox.
2019-02-15 22:56:28 +00:00
* VT-x/AMD-v virtualization must be enabled in BIOS
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
## Installation
2017-03-21 04:57:11 +00:00
2019-02-15 23:07:44 +00:00
* *macOS* with [brew ](https://brew.sh/ ): `brew cask install minikube`
* *macOS*: `curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64 && sudo install minikube-darwin-amd64 /usr/local/bin/minikube`
2017-10-12 18:20:39 +00:00
2019-02-15 23:31:23 +00:00
* *Windows with [Chocolatey ](https://chocolatey.org/ )* `choco install minikube`
* *Windows without Choco* - Download and run the [installer ](https://storage.googleapis.com/minikube/releases/latest/minikube-installer.exe )
2017-10-12 18:20:39 +00:00
2019-02-15 23:28:35 +00:00
* *Linux* `curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && sudo install minikube-linux-amd64 /usr/local/bin/minikube`
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
For full installation instructions, please see https://kubernetes.io/docs/tasks/tools/install-minikube/
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
### Supported Hypervisors
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
`minikube start` defaults to virtualbox, but supports other drivers using the `--vm-driver` argument:
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
* [KVM2 ](https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#kvm2-driver ) - Recommended Linux driver
* [hyperkit ](https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#hyperkit-driver ) - Recommended macOS driver
* virtualbox - Recommended Windows driver
2019-02-15 23:07:44 +00:00
* [none ](https://github.com/kubernetes/minikube/blob/master/docs/vmdriver-none.md ) - bare-metal execution on Linux, at the expense of system security and reliability
2017-03-21 04:57:11 +00:00
2019-02-15 23:24:00 +00:00
Other drivers which are not yet part of our continuous integration system are:
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
* [hyperv ](https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#hyperV-driver )
2019-02-15 23:07:44 +00:00
* [vmware ](https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#vmware-unified-driver )
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
## Quick Start
2017-03-21 04:57:11 +00:00
2019-02-15 23:24:00 +00:00
Start a cluster:
2017-03-21 04:57:11 +00:00
2019-02-15 23:24:00 +00:00
`minikube start`
2017-03-21 04:57:11 +00:00
2019-02-15 23:24:00 +00:00
Interact with it using `kubectl` , just like any other kubernetes cluster:
2017-03-21 04:57:11 +00:00
```
2019-02-15 22:56:28 +00:00
$ kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.4 --port=8080
deployment "hello-minikube" created
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
$ kubectl expose deployment hello-minikube --type=NodePort
service "hello-minikube" exposed
2017-03-21 04:57:11 +00:00
```
2019-02-15 23:32:57 +00:00
Open the endpoint in your browser:
2017-03-21 04:57:11 +00:00
2019-02-15 23:32:57 +00:00
`minikube service hello-minikube`
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
Start a second local cluster:
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
`minikube start -p cluster2`
2017-10-04 22:01:18 +00:00
2019-02-15 22:56:28 +00:00
Stop your local cluster:
`minikube stop`
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
Delete your local cluster:
2017-03-21 04:57:11 +00:00
2019-02-15 22:56:28 +00:00
`minikube delete`