<p>I am using <code>Raspberry pi</code> for <code>kubernetes</code> cluster setup. I was using below docker version:</p>

<pre><code>Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        e68fc7a
 Built:             Tue Aug 21 17:30:52 2018
 OS/Arch:           linux/arm
 Experimental:      false

Server:
 Engine:
 Version:          18.06.1-ce
 API version:      1.38 (minimum version 1.12)
 Go version:       go1.10.3
 Git commit:       e68fc7a
 Built:            Tue Aug 21 17:26:37 2018
 OS/Arch:          linux/arm
 Experimental:     false
</code></pre>

<p>Looks like now the docker version latest is <code>18.09.0</code> and the latest <code>kubernetes</code> version is not supporting this docker version. I have even tried installing some older version of kube like <code>1.9.7</code> or <code>1.9.6</code> but while initiating the <code>kubeadm init</code>,  I am getting the below error:</p>

<pre><code>[ERROR SystemVerification]: unsupported docker version: 18.09.0
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
</code></pre>

<p>Which version should I specify for <code>kubernetes</code> and <code>docker</code> to run properly. Also how can we specify version while insatlling docker. I normally use below command to install docker:</p>

<pre><code>curl -sSL get.docker.com | sh 
</code></pre>

S Andrew
<p>In Kubernetes there is nothing like <em>supported</em>. Instead of it they use <em>validated</em> - it means that all features were tested and validated with some Docker version.</p>

<p>And validated Docker versions are still the same from Kubernetes version 1.8 until 1.11: <strong>Docker 1.11.2 to 1.13.1 and 17.03.x</strong>. See here:
<a href="https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.8.md#external-dependencies" rel="noreferrer">https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.8.md#external-dependencies</a>
and here <a href="https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#external-dependencies" rel="noreferrer">https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#external-dependencies</a></p>

<p>Starting from Kubernetes version 1.12 <strong>Docker 17.06, 17.09 and 18.06</strong> started to be also validated. See here:
<a href="https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.12.md#external-dependencies" rel="noreferrer">https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.12.md#external-dependencies</a></p>

<p>As I know final version of Docker 18.09 was released 4 days ago so here we cannot expect this version to be validated in Kubernetes now.</p>

<p><strong>Update (9.4.2019):</strong> Docker 18.09 is validated against newly released Kubernetes 1.14: <a href="https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.14.md#external-dependencies" rel="noreferrer">https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.14.md#external-dependencies</a></p>

<hr>

<p>You can specify exact Docker version for the <em>get.docker.com</em> script by <code>VERSION</code> variable:</p>

<pre><code>export VERSION=18.03 &amp;&amp; curl -sSL get.docker.com | sh
</code></pre>
