Setup Minikube on Ubuntu 22.04 LTS without virtualization support
Contents
I always wanted to have a home server, which I could ssh into from anywhere, and run my side projects on it. Last month I decided to create one, and I am documenting the process here.
Hardware
I had an old laptop lying around, which I decided to use as my home server. It’s ThinkPad T480, 16GB RAM, 512GB SSD, and i5 8th gen processor. I installed Ubuntu 22.04 LTS on it, and it’s working great. Unfortunately, It doesn’t have virtualization support, so I can’t run VMs on it. But I can run containers, which is enough for my use case.
Software
I was going through different options for running containers, and I decided to go with Kubernetes. It’s a great tool for running containers, and it’s used by most of the big companies. However, instead of installing Kubernetes, I decided to run a development/learning on my server. This server isn’t intended to be used in production anyway.
There are many tools to create a k8s learning/development environment, Like Kind, Kubectl, or even Docker Desktop was an option.
Docker Desktop however needs virtualization support, which my laptop doesn’t have. So I thought of using Kind or Minikube, and I couldn’t find any major difference between the two. Though, Minikube is more popular.
Installing Docker
You can find the instructions here: https://docs.docker.com/engine/install/ubuntu/
|
|
Installing Minikube
You can find the instructions here: https://minikube.sigs.k8s.io/docs/start/ Minikube supports multiple drivers, like docker, kvm2, virtualbox, etc. I am using docker driver, as it’s the only one which works on my laptop. Podman is experimental, KVM, VirtualBox, QEMU require virtualization support, which my laptop doesn’t have. (I wish I had a better laptop :P)
|
|
|
|
That’s all folks, that’s all it takes to set up your mini Kubernetes cluster on your laptop. You can now use kubectl to interact with your cluster.
I will talk about connecting to the k8s cluster from your local machine in the next post and connecting it to SSH, we will also set up a reverse proxy to access the k8s dashboard from outside the server.
The plan is to eventually setup different projects on this server. Stay tuned for more updates.