minikube

module
v0.34.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2019 License: Apache-2.0

README

minikube

BuildStatus Widget GoReport Widget

What is minikube?

minikube implements a local Kubernetes cluster on macOS, Linux, and Windows.

Our goal is to enable fast local development and to support all Kubernetes features that fit. We hope you enjoy it!

News

Features

minikube runs the official stable release of Kubernetes, with support for standard Kubernetes features like:

As well as developer-friendly features:

  • Addons - a marketplace for developers to share configurations for running services on minikube
  • GPU support - for machine learning
  • Filesystem mounts
  • Automatic failure analysis

Documentation

Community

Installation

For detailed steps, see the installation guide

  • macOS 10.12 (Sierra) or higher

    • Requires installing hypervisor, such as hyperkit (recommended) or VirtualBox
    • using brew: brew cask install minikube
    • manually: curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64 && sudo install minikube-darwin-amd64 /usr/local/bin/minikube
  • *Windows 10

    • Requires a hypervisor, such as VirtualBox (recommended) or HyperV
    • VT-x/AMD-v virtualization must be enabled in BIOS
    • using chocolatey* choco install minikube
    • manually: Download and run the installer
  • Linux

Supported Hypervisors

minikube start defaults to virtualbox, but supports other drivers using the --vm-driver argument:

  • KVM2 - Recommended Linux driver
  • hyperkit - Recommended macOS driver
  • virtualbox - Recommended Windows driver
  • none - bare-metal execution on Linux, at the expense of system security and reliability

Other drivers which are not yet part of our continuous integration system are:

Quick Start

Start a cluster by running:

minikube start

Once started, you can interact with your cluster using kubectl, just like any other Kubernetes cluster. For instance, starting a server:

kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.4 --port=8080

Exposing a service as a NodePort

kubectl expose deployment hello-minikube --type=NodePort

minikube makes it easy to open this exposed endpoint in your browser:

minikube service hello-minikube

Start a second local cluster:

minikube start -p cluster2

Stop your local cluster:

minikube stop

Delete your local cluster:

minikube delete

Directories

Path Synopsis
cmd
util
package util is a hodge-podge of utility functions that should be moved elsewhere.
package util is a hodge-podge of utility functions that should be moved elsewhere.
deploy
release_notes
listpullreqs.go lists pull requests since the last release.
listpullreqs.go lists pull requests since the last release.
pkg
minikube/console
Package console provides a mechanism for sending localized, stylized output to the console.
Package console provides a mechanism for sending localized, stylized output to the console.
minikube/cruntime
Package cruntime contains code specific to container runtimes
Package cruntime contains code specific to container runtimes
minikube/exit
Package exit contains functions useful for exiting gracefully.
Package exit contains functions useful for exiting gracefully.
minikube/logs
package logs are convenience methods for fetching logs from a minikube cluster
package logs are convenience methods for fetching logs from a minikube cluster
test
third_party
go9p
The clnt package go9provides definitions and functions used to implement a 9P2000 file client.
The clnt package go9provides definitions and functions used to implement a 9P2000 file client.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL