diff --git a/site/content/en/_index.html b/site/content/en/_index.html
index 8687b84c25..05ade99efe 100644
--- a/site/content/en/_index.html
+++ b/site/content/en/_index.html
@@ -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 >}}
diff --git a/site/content/en/docs/Contributing/triage.md b/site/content/en/docs/Contributing/triage.md
index 318312107b..93b3c403e5 100644
--- a/site/content/en/docs/Contributing/triage.md
+++ b/site/content/en/docs/Contributing/triage.md
@@ -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
diff --git a/site/content/en/docs/Reference/Drivers/docker.md b/site/content/en/docs/Reference/Drivers/docker.md
index f44261fbad..afd0a970b7 100644
--- a/site/content/en/docs/Reference/Drivers/docker.md
+++ b/site/content/en/docs/Reference/Drivers/docker.md
@@ -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/)
diff --git a/site/content/en/docs/Reference/Drivers/hyperv.md b/site/content/en/docs/Reference/Drivers/hyperv.md
index 909f1e03f8..3595a2bb9d 100644
--- a/site/content/en/docs/Reference/Drivers/hyperv.md
+++ b/site/content/en/docs/Reference/Drivers/hyperv.md
@@ -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.
diff --git a/site/content/en/docs/Reference/Drivers/includes/check_baremetal_linux.inc b/site/content/en/docs/Reference/Drivers/includes/check_baremetal_linux.inc
new file mode 100644
index 0000000000..da6797ff8c
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/includes/check_baremetal_linux.inc
@@ -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.
\ No newline at end of file
diff --git a/site/content/en/docs/Reference/Drivers/includes/check_virtualization_linux.inc b/site/content/en/docs/Reference/Drivers/includes/check_virtualization_linux.inc
new file mode 100644
index 0000000000..3f60068016
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/includes/check_virtualization_linux.inc
@@ -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
+
diff --git a/site/content/en/docs/Reference/Drivers/includes/check_virtualization_windows.inc b/site/content/en/docs/Reference/Drivers/includes/check_virtualization_windows.inc
new file mode 100644
index 0000000000..14812b61ec
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/includes/check_virtualization_windows.inc
@@ -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.
+```
\ No newline at end of file
diff --git a/site/content/en/docs/Reference/Drivers/includes/docker_usage.inc b/site/content/en/docs/Reference/Drivers/includes/docker_usage.inc
new file mode 100644
index 0000000000..df96d517ec
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/includes/docker_usage.inc
@@ -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
+```
diff --git a/site/content/en/docs/Reference/Drivers/includes/podman_usage.inc b/site/content/en/docs/Reference/Drivers/includes/podman_usage.inc
new file mode 100644
index 0000000000..9962043165
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/includes/podman_usage.inc
@@ -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
+```
diff --git a/site/content/en/docs/Reference/Drivers/kvm2.md b/site/content/en/docs/Reference/Drivers/kvm2.md
index df13a3f95d..52102bb83e 100644
--- a/site/content/en/docs/Reference/Drivers/kvm2.md
+++ b/site/content/en/docs/Reference/Drivers/kvm2.md
@@ -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:
diff --git a/site/content/en/docs/Reference/Drivers/podman.md b/site/content/en/docs/Reference/Drivers/podman.md
new file mode 100644
index 0000000000..17425b1e58
--- /dev/null
+++ b/site/content/en/docs/Reference/Drivers/podman.md
@@ -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" %}}
+
+
+
diff --git a/site/content/en/docs/Reference/disk_cache.md b/site/content/en/docs/Reference/disk_cache.md
index 84d43112ef..24590727d5 100644
--- a/site/content/en/docs/Reference/disk_cache.md
+++ b/site/content/en/docs/Reference/disk_cache.md
@@ -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:
diff --git a/site/content/en/docs/Reference/persistent_volumes.md b/site/content/en/docs/Reference/persistent_volumes.md
index 6b7a38b83b..02e90bc703 100644
--- a/site/content/en/docs/Reference/persistent_volumes.md
+++ b/site/content/en/docs/Reference/persistent_volumes.md
@@ -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
diff --git a/site/content/en/docs/Start/includes/post_install.inc b/site/content/en/docs/Start/includes/post_install.inc
index 5f28d307cf..03ed41bb61 100644
--- a/site/content/en/docs/Start/includes/post_install.inc
+++ b/site/content/en/docs/Start/includes/post_install.inc
@@ -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.
diff --git a/site/content/en/docs/Start/linux.md b/site/content/en/docs/Start/linux.md
index b52b1690d8..1e4fd4a9b1 100644
--- a/site/content/en/docs/Start/linux.md
+++ b/site/content/en/docs/Start/linux.md
@@ -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" %}}
diff --git a/site/content/en/docs/Start/macos.md b/site/content/en/docs/Start/macos.md
index 3c41e3a9b9..b23a81cf13 100644
--- a/site/content/en/docs/Start/macos.md
+++ b/site/content/en/docs/Start/macos.md
@@ -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 %}}
diff --git a/site/content/en/docs/Start/windows.md b/site/content/en/docs/Start/windows.md
index 02ff403f99..2fe1d79a5f 100644
--- a/site/content/en/docs/Start/windows.md
+++ b/site/content/en/docs/Start/windows.md
@@ -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 %}}
diff --git a/site/content/en/docs/Tutorials/continuous_integration.md b/site/content/en/docs/Tutorials/continuous_integration.md
index 4dad6cc9ed..1a55a58150 100644
--- a/site/content/en/docs/Tutorials/continuous_integration.md
+++ b/site/content/en/docs/Tutorials/continuous_integration.md
@@ -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).
\ No newline at end of file
diff --git a/site/content/en/docs/Tutorials/nvidia_gpu.md b/site/content/en/docs/Tutorials/nvidia_gpu.md
index 68846ae15b..4e9f561490 100644
--- a/site/content/en/docs/Tutorials/nvidia_gpu.md
+++ b/site/content/en/docs/Tutorials/nvidia_gpu.md
@@ -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)
diff --git a/site/content/en/docs/Tutorials/untrusted_root_certificate.md b/site/content/en/docs/Tutorials/untrusted_root_certificate.md
index 77093d76f3..d1b857aa73 100644
--- a/site/content/en/docs/Tutorials/untrusted_root_certificate.md
+++ b/site/content/en/docs/Tutorials/untrusted_root_certificate.md
@@ -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