Merge pull request #7252 from medyagh/kic_docs

add site docs for docker/podman driver
pull/7244/head^2
Thomas Strömberg 2020-03-26 06:11:20 -07:00 committed by GitHub
commit f0feff013a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 169 additions and 67 deletions

View File

@ -83,12 +83,14 @@ A single command away from reproducing your production environment, from the com
{{% /blocks/feature %}}
{{% blocks/feature icon="fa-thumbs-up" title="Cross-platform" %}}
- Bare-metal
- HyperKit
- Hyper-V
- KVM
- Docker
- HyperKit
- Bare-metal
- VirtualBox
- Hyper-V
- VMware
- Podman
{{% /blocks/feature %}}
{{< /blocks/section >}}

View File

@ -62,6 +62,7 @@ If the issue is specific to an operating system, hypervisor, container, addon, o
- `co/kvm2`
- `co/none-driver`
- `co/docker-driver`
- `co/podman-driver`
- `co/virtualbox`
**co/[kubernetes component]** - When the issue appears specific to a k8s component

View File

@ -4,28 +4,18 @@ linkTitle: "docker"
weight: 3
date: 2020-02-05
description: >
Docker driver (EXPERIMENTAL)
Docker driver
---
## Overview
The Docker driver is an experimental VM-free driver that ships with minikube v1.7.
The Docker driver is the newest minikube driver. which runs kubernetes in container VM-free ! with full feature parity with minikube in VM.
{{% readfile file="/docs/Reference/Drivers/includes/docker_usage.inc" %}}
This driver was inspired by the [kind project](https://kind.sigs.k8s.io/), and uses a modified version of its base image.
## Special features
- Cross platform (linux, macos, windows)
- No hypervisor required when run on Linux.
No hypervisor required when run on Linux.
## Limitations
As an experimental driver, not all commands are supported on all platforms. Notably: `mount,` `service`, `tunnel`, and others. Most of these limitations will be addressed by minikube v1.8 (March 2020)
## Issues
* [Full list of open 'kic-driver' issues](https://github.com/kubernetes/minikube/labels/co%2Fkic-driver)
## Troubleshooting
* Run `minikube start --alsologtostderr -v=1` to debug crashes
* If your docker is too slow on mac os try [Improving docker performance](https://docs.docker.com/docker-for-mac/osxfs-caching/)

View File

@ -7,7 +7,6 @@ date: 2018-08-05
description: >
Microsoft Hyper-V driver
---
## Overview
Hyper-V is a native hypervisor built in to modern versions of Microsoft Windows.

View File

@ -0,0 +1,7 @@
To use baremetal driver (none driver). verify that your operating system is Linux and also have 'systemd' installed.
```shell
pidof systemd && echo "yes" || echo "no"
```
If the above command outputs "no":
Your system is not suitable for none driver.

View File

@ -0,0 +1,11 @@
To use VM drivers, verify that your system has virtualization support enabled:
```shell
egrep -q 'vmx|svm' /proc/cpuinfo && echo yes || echo no
```
If the above command outputs "no":
- If you are running within a VM, your hypervisor does not allow nested virtualization. You will need to use the *None (bare-metal)* driver
- If you are running on a physical machine, ensure that your BIOS has hardware virtualization enabled

View File

@ -0,0 +1,19 @@
To check if virtualization is supported, run the following command on your Windows terminal or command prompt.
```shell
systeminfo
```
If you see the following output, virtualization is supported:
```shell
Hyper-V Requirements: VM Monitor Mode Extensions: Yes
Virtualization Enabled In Firmware: Yes
Second Level Address Translation: Yes
Data Execution Prevention Available: Yes
```
If you see the following output, your system already has a Hypervisor installed and you can skip the next step.
```shell
Hyper-V Requirements: A hypervisor has been detected.
```

View File

@ -0,0 +1,16 @@
## Install Docker
- [Docker Desktop](https://hub.docker.com/search?q=&type=edition&offering=community&sort=updated_at&order=desc)
## Usage
Start a cluster using the docker driver:
```shell
minikube start --driver=docker
```
To make docker the default driver:
```shell
minikube config set driver docker
```

View File

@ -0,0 +1,21 @@
## experimental
This is an experimental driver. please use it only for experimental reasons.
for a better kubernetes in container experience, use docker [driver](https://minikube.sigs.k8s.io/docs/reference/drivers/docker).
## Install Podman
- [Podman](https://podman.io/getting-started/installation.html)
## Usage
Start a cluster using the docker driver:
```shell
minikube start --driver=podman
```
To make docker the default driver:
```shell
minikube config set driver podman
```

View File

@ -8,12 +8,17 @@ description: >
Linux KVM (Kernel-based Virtual Machine) driver
---
## Overview
[KVM (Kernel-based Virtual Machine)](https://www.linux-kvm.org/page/Main_Page) is a full virtualization solution for Linux on x86 hardware containing virtualization extensions. To work with KVM, minikube uses the [libvirt virtualization API](https://libvirt.org/)
{{% readfile file="/docs/Reference/Drivers/includes/kvm2_usage.inc" %}}
## Check virtualization support
{{% readfile file="/docs/Reference/Drivers/includes/check_virtualization_linux.inc" %}}
## Special features
The `minikube start` command supports 3 additional kvm specific flags:

View File

@ -0,0 +1,26 @@
---
title: "podman"
linkTitle: "podman"
weight: 3
date: 2020-03-26
description: >
Podman driver
---
## Overview
The podman driver is another kubernetes in container driver for minikube. simmilar to [docker](https://minikube.sigs.k8s.io/docs/reference/drivers/docker/) driver.
podman driver is currently experimental.
and only supported on Linux and MacOs (with a remote podman server)
## Try it with CRI-O container runtime.
```shell
minikube start --driver=podman --container-runtime=cri-o
```
{{% readfile file="/docs/Reference/Drivers/includes/podman_usage.inc" %}}

View File

@ -4,7 +4,7 @@ linkTitle: "Disk cache"
weight: 6
date: 2019-08-01
description: >
Cache Rules Everything Around Minikube
Cache Rules Everything Around minikube
---
minikube has built-in support for caching downloaded resources into `$MINIKUBE_HOME/cache`. Here are the important file locations:

View File

@ -7,7 +7,7 @@ description: >
About persistent volumes (hostPath)
---
minikube supports [PersistentVolumes](https://kubernetes.io/docs/concepts/storage/persistent-volumes/) of type `hostPath` out of the box. These PersistentVolumes are mapped to a directory inside the running Minikube instance (usually a VM, unless you use `--driver=none`, `--driver=docker`, or `--driver=podman`). For more information on how this works, read the Dynamic Provisioning section below.
minikube supports [PersistentVolumes](https://kubernetes.io/docs/concepts/storage/persistent-volumes/) of type `hostPath` out of the box. These PersistentVolumes are mapped to a directory inside the running minikube instance (usually a VM, unless you use `--driver=none`, `--driver=docker`, or `--driver=podman`). For more information on how this works, read the Dynamic Provisioning section below.
## A note on mounts, persistence, and minikube hosts

View File

@ -1,4 +1,4 @@
### Getting to know Kubernetes
## Getting to know Kubernetes
Once started, you can use any regular Kubernetes command to interact with your minikube cluster. For example, you can see the pod states by running:
@ -6,16 +6,16 @@ Once started, you can use any regular Kubernetes command to interact with your m
kubectl get po -A
```
### Increasing memory allocation
## Increasing memory allocation
minikube only allocates 2GB of RAM by default, which is only enough for trivial deployments. For larger
minikube auto-selects the memory size based on your system up to 6000mb. For larger
deployments, increase the memory allocation using the `--memory` flag, or make the setting persistent using:
```shell
minikube config set memory 4096
minikube config set memory 8096
```
### Where to go next?
## Where to go next?
Visit the [examples](/docs/examples) page to get an idea of what you can do with minikube.

View File

@ -39,32 +39,39 @@ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-{{< la
{{% /tab %}}
{{% /tabs %}}
## Hypervisor Setup
Verify that your system has virtualization support enabled:
```shell
egrep -q 'vmx|svm' /proc/cpuinfo && echo yes || echo no
```
If the above command outputs "no":
- If you are running within a VM, your hypervisor does not allow nested virtualization. You will need to use the *None (bare-metal)* driver
- If you are running on a physical machine, ensure that your BIOS has hardware virtualization enabled
## Driver Setup
{{% tabs %}}
{{% tab "Docker" %}}
## Check container support
{{% readfile file="/docs/Reference/Drivers/includes/docker_usage.inc" %}}
{{% /tab %}}
{{% tab "KVM" %}}
## Check virtualization support
{{% readfile file="/docs/Reference/Drivers/includes/check_virtualization_linux.inc" %}}
{{% readfile file="/docs/Reference/Drivers/includes/kvm2_usage.inc" %}}
{{% /tab %}}
{{% tab "VirtualBox" %}}
## Check virtualization support
{{% readfile file="/docs/Reference/Drivers/includes/check_virtualization_linux.inc" %}}
{{% readfile file="/docs/Reference/Drivers/includes/virtualbox_usage.inc" %}}
{{% /tab %}}
{{% tab "None (bare-metal)" %}}
## Check baremetal support
{{% readfile file="/docs/Reference/Drivers/includes/check_baremetal_linux.inc" %}}
If you are already running minikube from inside a VM, it is possible to skip the creation of an additional VM layer by using the `none` driver.
{{% readfile file="/docs/Reference/Drivers/includes/none_usage.inc" %}}
{{% /tab %}}
{{% tab "Podman (experimental)" %}}
{{% readfile file="/docs/Reference/Drivers/includes/podman_usage.inc" %}}
{{% /tab %}}
{{% /tabs %}}
{{% readfile file="/docs/Start/includes/post_install.inc" %}}

View File

@ -50,6 +50,9 @@ brew upgrade minikube
## Hypervisor Setup
{{% tabs %}}
{{% tab "Docker" %}}
{{% readfile file="/docs/Reference/Drivers/includes/docker_usage.inc" %}}
{{% /tab %}}
{{% tab "Hyperkit" %}}
{{% readfile file="/docs/Reference/Drivers/includes/hyperkit_usage.inc" %}}
{{% /tab %}}
@ -62,6 +65,9 @@ brew upgrade minikube
{{% tab "VMware" %}}
{{% readfile file="/docs/Reference/Drivers/includes/vmware_macos_usage.inc" %}}
{{% /tab %}}
{{% tab "Podman (experimental)" %}}
{{% readfile file="/docs/Reference/Drivers/includes/podman_usage.inc" %}}
{{% /tab %}}
{{% /tabs %}}

View File

@ -7,8 +7,6 @@ weight: 3
### Prerequisites
* Windows 8 or above
* A hypervisor, such as Hyper-V or VirtualBox
* Hardware virtualization support must be enabled in BIOS
* 4GB of RAM
### Installation
@ -30,33 +28,23 @@ After it has installed, close the current CLI session and reopen it. minikube sh
{{% /tab %}}
{{% /tabs %}}
## Hypervisor Setup
To check if virtualization is supported, run the following command on your Windows terminal or command prompt.
```shell
systeminfo
```
If you see the following output, virtualization is supported:
```shell
Hyper-V Requirements: VM Monitor Mode Extensions: Yes
Virtualization Enabled In Firmware: Yes
Second Level Address Translation: Yes
Data Execution Prevention Available: Yes
```
If you see the following output, your system already has a Hypervisor installed and you can skip the next step.
```shell
Hyper-V Requirements: A hypervisor has been detected.
```
{{% tabs %}}
{{% tab "Docker" %}}
{{% readfile file="/docs/Reference/Drivers/includes/docker_usage.inc" %}}
{{% /tab %}}
{{% tab "Hyper-V" %}}
## Check Hypervisor
{{% readfile file="/docs/Reference/Drivers/includes/check_virtualization_windows.inc" %}}
{{% readfile file="/docs/Reference/Drivers/includes/hyperv_usage.inc" %}}
{{% /tab %}}
{{% tab "VirtualBox" %}}
## Check Hypervisor
{{% readfile file="/docs/Reference/Drivers/includes/check_virtualization_windows.inc" %}}
{{% readfile file="/docs/Reference/Drivers/includes/virtualbox_usage.inc" %}}
{{% /tab %}}
{{% /tabs %}}

View File

@ -9,13 +9,13 @@ description: >
## Overview
Most continuous integration environments are already running inside a VM, and may not support nested virtualization. The `none` driver was designed for this use case.
Most continuous integration environments are already running inside a VM, and may not support nested virtualization. The `none` driver was designed for this use case. or you could alternatively use the [Docker](https://minikube.sigs.k8s.io/docs/reference/drivers/docker).
## Prerequisites
- VM running a systemd based Linux distribution
## Tutorial
## using none driver
Here is an example, that runs minikube from a non-root user, and ensures that the latest stable kubectl is installed:
@ -39,3 +39,7 @@ touch $KUBECONFIG
sudo -E minikube start --driver=none
```
## Alternative ways
you could alternatively use minikube's container drivers such as [Docker](https://minikube.sigs.k8s.io/docs/reference/drivers/docker) or [Podman](https://minikube.sigs.k8s.io/docs/reference/drivers/podman).

View File

@ -98,7 +98,7 @@ to expose GPUs with `--driver=kvm2`. Please don't mix these instructions.
## Why does minikube not support NVIDIA GPUs on macOS?
VM drivers supported by minikube for macOS doesn't support GPU passthrough:
drivers supported by minikube for macOS doesn't support GPU passthrough:
- [mist64/xhyve#108](https://github.com/mist64/xhyve/issues/108)
- [moby/hyperkit#159](https://github.com/moby/hyperkit/issues/159)

View File

@ -11,7 +11,7 @@ description: >
Most organizations deploy their own Root Certificate and CA service inside the corporate networks.
Internal websites, image repositories and other resources may install SSL server certificates issued by this CA service for security and privacy concerns.
You may install the Root Certificate into the minikube VM to access these corporate resources within the cluster.
You may install the Root Certificate into the minikube cluster to access these corporate resources within the cluster.
## Prerequisites
@ -26,13 +26,13 @@ You may install the Root Certificate into the minikube VM to access these corpor
openssl x509 -inform der -in my_company.cer -out my_company.pem
```
* You may need to delete existing minikube VM
* You may need to delete existing minikube cluster
```shell
minikube delete
```
* Copy the certificate before creating the minikube VM
* Copy the certificate before creating the minikube cluster
```shell
mkdir -p $HOME/.minikube/certs