Rancher Desktop – A Worthy Docker Desktop Alternative?

If you’re using Docker Desktop on your work computers and don’t have your company paying for that software, you’re probably violating their license terms. Earlier this year (in January 2022), new pricing requirements went into effect that will require large organizations (as of the time of this writing – that’s companies with over 250 employees or $10,000,000 USD in annual revenue) to pay for the software.

Before we go any further, let’s get a few things out of the way – the new pricing that Docker has implemented is extremely fair and generous. This change will not affect most organizations except large ones with a fairly large annual revenue. Secondly, the pricing is specific to the Docker Desktop software, not the underlying open-source containerization technology. If at all possible, do support their work and pay for the software.

However, I understand the realities on the ground. You may be part of a large organization and the red-tape that you may have to cut through to get your organization to comply with even this seemingly simple new licensing requirement may be quite a lot. Or you may have a different set of reservations that’s causing you to look for alternative solutions. Whatever that reason may be, I’ve found a worthy alternative software in Rancher Desktop, that provides some parity to Docker Desktop for most basic scenarios and use-cases.

Installation

Download and run the installer for your operating system from rancher.io. On first run, you’ll be presented with a dialog similar to the one below:

Rancher Desktop first run dialog - allowing for the selection of the Kubernetes version you want to use along with the Container runtime technology.

Select the version of Kubernetes you want to use (latest stable version is preselected) and the container runtime that you’d like to use.   I’m interested in using Rancher Desktop as a replacement to Docker Desktop and as such, I have selected “dockerd (moby)”. If you’re not interested in running Kubernetes workloads, feel free to uncheck the “Enable Kubernetes” checkbox so that your system is not weighed down by those additional dependencies.

Once Rancher Desktop is running, you’ll see a corresponding icon in your menu bar (on the Mac).  Click on this icon and select “Preferences”.  Navigate to “Supporting Utilities”.  For Docker support, select the docker option here.

Supporting Utilities tab in preferences window of Rancher desktop with the docker option selected

If you’re on a Mac and you receive an error on this screen stating that the “user/local/bin” directory doesn’t exist, you can create one manually and provide the necessary permissions:

sudo mkdir /usr/local/bin
sudo chown $USER /usr/local/bin

Run Docker Containers

Once these are in place, open a new terminal and run a docker ps or any other docker command.  Voila!  You have docker running without “Docker Desktop”!

What better way to test running a Docker image running on your machine than running the good ol’ cowsay application:

running the cowsay image on Rancher Desktop

Run Docker Compose

The fun doesn’t end there. You can also run docker-compose like you’re used to. Below, you can see me running the ASP.NET/MSSQL compose recipe from Docker’s awesome-compose repo on GitHub.

docker compose output from running the ASP.NET / MSSQL compose recipe from awesome-compose repo on GitHub

And here’s the resultant web app, running under localhost:

ASP.NET app running on localhost

Closing Thoughts

While Docker Desktop is proprietary software, Rancher Desktop is an open-source product built out on GitHub. If you’re looking for an alternative to Docker Desktop, certainly give Rancher Desktop a try.

Leave a Comment

Your email address will not be published. Required fields are marked *