<p>First of all, I am not an expert in container orchestration tools.</p>
<p>I've just installed <a href="https://microk8s.io/" rel="noreferrer">microk8s</a> according to the guide:
<a href="https://microk8s.io/docs/" rel="noreferrer">https://microk8s.io/docs/</a></p>
<p>And if I run <code>microk8s kubectl get nodes</code>, I see, that my node is actually running <code>containerd</code> engine.</p>
<p>My application build process is set up to generate docker file and automatically create docker images, so I would like microk8s also use docker.</p>
<p>I used <a href="https://minikube.sigs.k8s.io/" rel="noreferrer">minikube</a> before, and now I decided to try microk8s. Now I am a bit confused, maybe it was a bad idea to stick with docker from the beginning?</p>
<p>Is it possible to set a docker engine for microk8s?</p>
<hr />
<p>I've never used contained before, and I don't know how to prepare contained images for my app. That's why I am asking.</p>

<p>To run Nvidia GPU enabled containers, I had to switch from containerd to docker in microk8s. Here's how I did that:</p>
<ol>
<li><p>Edit <code>/var/snap/microk8s/current/args/kubelet</code></p>
</li>
<li><p>Change <code>--container-runtime=docker</code> from  <code>remote</code>. Then, execute the following commands.</p>
</li>
<li><p><code>microk8s stop</code></p>
</li>
<li><p><code>microk8s start</code></p>
</li>
</ol>
