Rancher Desktop - The Alternative to Docker Desktop for Windows
Part 1: Overview – Docker Desktop - Potential Alternatives (Windows) Part 2: Podman - Potential Alternative to Docker Desktop for Windows Part 3: Docker-CE + WSL2 - Potential Alternative to Docker Desktop for Windows Part 4: Rancher Desktop - Potential Alternative to Docker Desktop for Windows
In this article I present Rancher Desktop. Is it the alternative that at least the title image suggests? Ja ein! (Yes and no!) More on that below.
Rancher Desktop
That Rancher delivers good and easy tools for the container market should be clear by now. Personally, I’d rank RKE among the enterprise solutions, right after AKS, EKS, and GKE. What was surprising – at least for me – was that development didn’t slow down after the acquisition by SUSE (leaving RIO aside). In fact, a new product was added: Rancher Desktop.
What is Rancher Desktop?
You could call Rancher Desktop a direct competitor to Docker Desktop for Windows. The tool markets itself as a container management and Kubernetes environment for the desktop – and not just for Windows.
The solution can be installed on most operating systems: Windows, Linux distributions, macOS amd64/x86, and macOS ARM. Rancher Desktop bundles nerdctl, kubectl, helm, and the Docker CLI as tools.
With k3s, you also get a widely adopted and CNCF-listed Kubernetes environment on board, which can be operated with either containerd or – this is important for my use case – dockerd. All Kubernetes versions from recent years are included, meaning you can better replicate your target environment at the desktop level – which benefits development.
Switching between Kubernetes versions is quite simple and fast! Traefik is used as the reverse proxy. I installed version 1.0.1 in mid-February (2022), and today – March 2022 – we’re already at version 1.2.1. Development continues; in the meantime, support for Mac M1 was added, for example.
The interface is kept simple and clean – most things can be configured through the UI. During installation, two WSL2 containers are created: rancher-desktop and rancher-desktop-data.
Kubernetes configuration and the Docker socket can be integrated into other WSL instances – unfortunately I didn’t have time to test what exactly this is good for. Maybe multi-node scenarios can be simulated this way?
Enough gushing – can Rancher Desktop meet my requirements? I’ll reveal that below.
Rancher Desktop Installation
There’s not much to report here: download, run, next, next, done! After that, the configuration interface starts and you can select the container runtime and Kubernetes version. For my purposes, I chose dockerd, which spins up a Kubernetes environment with dockerd and the selected version. Additionally, docker.exe and docker-compose.exe are provided on Windows – both commands can be used immediately from Windows.
Personally, I found the installation easier and more pleasant than Docker Desktop. The installation on Ubuntu Desktop was just as straightforward – whether it makes sense on a Linux desktop is up to each individual, but a small VM based on QEMU will be installed either way.
Rancher Desktop on Windows
Perfect – everything I need and know is there. Docker, Docker-Compose available right away without much fuss. Container in Container works too. What more could you want?
Windows Containers… unfortunately no, even with this variant you have to do without Windows Containers. Containers that are quickly spun up with docker or docker-compose cannot be managed from the UI. This is unimportant to me since I prefer using commands anyway, and for everything else there’s still Portainer or the Docker VSCode Extension.
What about VSCode integration anyway?
Rancher Desktop + Remote Containers in Visual Studio
I’ll keep this short: it works! Yes, it works without having to configure anything.
The “Try as Container” examples – containers in containers – work directly from VSCode… Not! At least not anymore, it used to work. I need to look into this.
Regular devcontainers work flawlessly, however. It just seems to me like the “cold start” takes longer. Purely by feel, it seems to me that this was much faster with Docker Desktop for Windows… Right, was :)
Conclusion
As you can see in the title image, Docker was knocked out of the arena. For me, Rancher Desktop is de facto the better choice. I’ve mentioned my willingness to pay for Docker Desktop several times. This test has another background for me.
I find the developments around Docker in recent years concerning. On one hand, the enterprise division of the company was bought by a systems house, Docker Swarm was discontinued – yes, Docker Swarm Mode still exists – then it was announced that dockershim would be removed from Kubernetes, and then came the new pricing policy.
Unfortunately, I can’t see a business model behind Docker making the desktop client paid. That can only be part – in my opinion even a very small part – of a larger plan. I don’t see the plan!
At the current point in time, I don’t think anyone can really say where things are going, so it doesn’t hurt to look around elsewhere.
The plan for now is to continue with Rancher Desktop. If anything new comes up, I’ll report on it.