Are you confused by the recent changes to the Docker Desktop service agreement? Are you looking for alternatives to use for your business or personal projects? Look no further! In this blog post, we will explore the recent changes to the Docker Desktop service agreement and provide you with some alternatives that you can use instead. With these options, you can continue to develop and deploy your applications without worrying about any limitations or restrictions. Keep reading to learn more!
History of Docker Desktop
Docker has been a crucial part of the container revolution. For many of us, the first time running a container was through Docker Desktop. Kubernetes used to be completely dependent on Docker. Kubernetes and the cloud-native ecosystem has evolved. There is no longer a direct reliance on Docker. Because of this, Docker has had to reinvent itself. Part of that included changing their pricing model. Docker Desktop remains free for small businesses, personal use, education, and non-commercial open-source projects. For professional use in larger businesses, a paid subscription is required.
Docker Desktop remains a great tool, and it does provide some really cool features out of the box. If you are looking for another option, you aren't alone -- these service agreement changes have driven a lot of people to other tools.
Docker Desktop Alternatives
There are many alternatives to Docker Desktop. The right one for you depends on your use-case and expertise. If you are working at a larger enterprise, then I recommend making your local setup as close to your production environment as possible. If you're a part of a smaller organization or doing work on the side, then I would choose the lightest weight option.
Minikube has been a go-to for people learning Kubernetes. If you are looking for a solution that can manage your containers locally as well as provide a vanilla Kubernetes cluster locally, then minikube is great! Minikube quickly sets up a local Kubernetes cluster on macOS, Linux, and Windows. Minikube focuses on helping application developers and new Kubernetes users. Credit to this article for describing how to switch from docker desktop to minikube on mac https://itnext.io/goodbye-docker-desktop-hello-minikube-3649f2a1c469. We later found that you may need to
brew install docker-credential-helper in order to make
docker login work.
If you are looking for an experience similar to Docker Desktop then Rancher Desktop might be the right choice for you. It provides a highly opinionated way to run containers and Kubernetes locally. It exposes a containerd daemon to manage images locally via nerdctl.
Podman is a daemonless container engine for developing, managing, and running OCI Containers on your Linux System. They claim it is as simple as
alias docker=podman. For the most part, it is! This is my favorite solution when I am running a single container. If you want to manage the orchestration of multiple containers, then I would go with an option that gives you a local Kubernetes cluster.