- cross-posted to:
- nixos@lemmit.online
- cross-posted to:
- nixos@lemmit.online
Some folks on the internet were interested in how I had managed to ditch Docker for local development. This is a slightly overdue write up on how I typically do things now with Nix, Overmind and Just.
I believe this is the Docker Desktop license pricing.
On an individual scale and even some smaller startup scales, things are a little bit different (you qualify for the free tier, everyone you work with is able to debug off-the-beaten-path Docker errors, knowledge about fixes is quick and easy to disseminate, etc.), but the context of this article and the thread on Mastodon that spawned it was a “unicorn” company with an engineering org comprised of hundreds of developers.
My point is that Docker Desktop is entirely optional. On Linux you can run Docker Engine natively, on Windows you can run it in WSL, and on macOS you can run it in a VM with Docker Engine, or via something like hyperkit and minikube. And Docker Engine (and the CLI) is FOSS.
I understood your point, and while there are situations where it can be optional, in a context and scale of hundreds of developers, who mostly don’t have any real
docker
knowledge, and who work almost exclusively on macOS, let alone enough to set up and maintain alternatives to Docker Desktop, the only practical option becomes to pay the licensing fees to enable the path of least resistance.We are over 1000 developers and use
docker ce
just fine. We use a self hosted repository for our images. IT is configuring new computers to use this internal docker repository by default. So new employees don’t even have to know about it to do their firstdocker build
.We all use Linux on our workstations and laptops. That might make it easier.
You are living my dream!
I think this is the key piece; the experience of Docker on Linux (including WSL if it’s not hooking into Docker Desktop on Windows) and on macOS is just so wildly difference when it comes to performance, reliability and stability.
Op comes off a bit, uninformed. E.g. I use docker engine and docker compose inside WSL2 on windows and performance is fine, then I use Intellij to manage images/containers, the service tab handles the basics. If I need to do anything very involved I use the cli.
Docker is fine, the docker desktop panic really only revealed who never took the time to learn how to use docker and what the alternative UIs are.