It's just taking longer than expected to replace Docker Desktop. But I am seeing a lot of progress on Podman and Rancher and a few others, and some of the larger tech companies are also building in-house replacements. A lot of the people who had to scramble to find a replacement are not happy about it.
In a year or two I think some of the companies that paid for licenses to avoid migrating are going to rethink their license costs, because the free alternatives will be just as good as Docker Desktop. Then we will see whether this revenue increase was sustainable or simply the transient result of holding customers hostage when they had no alternatives but to pay.
Docker charges $10/developer/month. Those developers are paid $150k+/yr, fully loaded to the company (insurance, taxes, accounting, etc) is probably double that, but call it $250k/yr to be nice. You take 3 developers and have them spend a quarter on replacing Docker Desktop, that's nearly $200k in developer costs spent replacing a tool that's gonna cost your 250 person company $30k/year.
Docker wants you to pay $10/mo to make your $20k/mo developer more effective, and companies in our industry would rather spend several months of developer time building an alternative that they'll have to support forever and teach every new individual coming into the company how to use.
For a group that seems to pride itself on math and logic and whatever, I don't understand what the hell we're thinking most of the time.
The licensing. My God, the licensing. It's not so much the money, as the infernal, mind-bending tax code level complexity involved in making sure all your software is properly licensed: determining what 'level' and 'edition' you are licensed at, who is licensed to use what, which servers are licensed... wait, what? Sorry, I passed out there for a minute when I was attacked by rabid licensing weasels.
I'm not inclined to make grand pronouncements about the future of software, but if anything kills off commercial software, let me tell you, it won't be open source software. They needn't bother. Commercial software will gleefully strangle itself to death on its own licensing terms.
https://blog.codinghorror.com/why-ruby/Through that doesn't really change your arguments point.
Through I also would argue that while some companies are tightly coupled to docker desktop many others are not (and can easily migrate) or need to migrate to other tooling for other non-payment reasons.
If you only need containers (e.g. docker cli) but not docker desktop podman is already a drop in replacement in many case, one which in certain aspects is even much better to boost(*1).
(1): Through that is only on Linux and it's not a clear cut "this is better" but more a "subtle differences can make it much better but also worse depending on what you do/are looking for".
It was much faster, had the exact fields we needed, and the exact workflow we wanted. It provided email alerts using the rules thst made sense for us and did I mention it was ridiculously faster?
We went from a single developer probably spending a few weeks in a year to maintain/augment a ticketing system that worked really great for us, to paying hundreds of thousands for something that doesn’t work well at all.
the 250 person companies are not building the replacement, the 2k+ ones will. And likely ones that fit their internal architecture better so there are productivity gains to be had on top of that
Large companies already have dedicated teams for stuff that is a lot less critical than the container runtime.
The companies that are too big to avoid paying, but too small to build a replacement, are the ones that are in a jam -- for now. But in a year or two, Podman or Rancher might might fully meet their needs. What should they do then? Continue to pay for Docker, or use a free and open source alternative that has feature parity?
Nobody seriously cares about docker hub. Nobody cares about the SSO, or the access management, or SCIM. Nobody uses anything but the app that makes it simple to run stuff in MacOS. That’s not worth 270k a year.
Always bear in mind that when "the Internet" complains about some minor price issue, it's usually individuals who are responding.
Individuals tend to have limited cash, and all decisions are cash. They are time rich and cash poor. They run Linux on the desktop over Windows to "save money". [1]
Most companies though are cash rich and time poor. If they can outsource a task for small money then they will. Yes, there's a place where the outsource cost is too high, but that's really high. They run windows on the desktop because that saves time. They'll continue to use docker because switching costs a lot of time.
So Docker will do just fine. Companies are more than happy to spend money. See AWS as exhibit A.
[1] there are many reasons to use a Linux desktop, saving money is the least interesting.
“Here’s a solution that will save you hours every month, it’s only $9 p/m.”
“$9 p/m???” - asked a developer choking on their avocado toast
“That’s the same price as Spotify! Meh, I can develop the same thing myself in 2 weeks.”
2 months later.
"Well, it's almost done. At least I won't be wasting $9 p/m."
Organizations are prone to bike shedding and forget about opportunity cost.
we have roughly 160 developers, sso is a requirement so Business license it is.
160 x24 x12 = 46k + dealing with Budgets + sso Integration
vs telling everyone to install colima, podman, whatever and replacing the commands.
if you need 3 people to replace docker, I have no clue what you are doing.
120 * N * Y vs M * Y looks very attractive for large N and small M, esp when that 120 may suddenly increase without warning (again).
It's still just math.
They should make their revenue by phoning home with private data they can exploit for revenue like everyone else.
They could be a $1B company if they sold code snippets to MS to train their code generators.
Yes… that was sarcasm.
Ten bucks a month for the value that Docker brings is a fantastic deal. I regularly see people pay much more for far less.
If you can’t be bothered to pay for anything, why should anyone pay you for your software?
Judging by the developer rhetoric, Gates & co. were right in the end and the chickens are starting to come home to roost for FOSS. "Vive la contre-révolution!" I suppose.
So, never chase free stuff if you are an enterprise. Chase quality, value, operational efficiency.
I assumed we were non-compliant as nothing had changed like no accounts or license keys.
It turns out it's more of a cover license where you purchase seats but from a developer PoV, nothing visibly changes.
Procurement and Legal are the ones you'd want to ask about it since that's their contact point
ps- I like this! I want the world to be like that.. but, reality check.. don't let suits find out
The problem here is simple; it only provides this immense value if it is effectively free without discrimination. But of course, it can't really just be free, or at least Dockerhub certainly can't be.
On the other hand, it also provides immense value to enterprise and even smaller customers, too, clearly. And I don't think anybody ever strongly doubted that aspect, it just was more doubted whether you could make a business out of it. But lo and behold, Dockerhub was integrated enough into the ecosystem and without an a strong enough alternative that it didn't seem to matter.
I assume Docker Desktop also factors into this somehow, but I don't know. I don't use it. Even on Windows and macOS, in the event I must use them to do dev work, I just use Podman Machine. Works well enough for me, and I don't care about a desktop UI (although apparently a couple do exist.)
I am glad that at the end of the day, I haven't seen any super bad fallout from this. I'm still able to use Docker images on my NAS without paying a monthly subscription. Whatever their rate limit is, I'm not hitting it. I'm sure it's a super bad pain in the ass for certain parties though. Like I bet GitHub has a deal to keep Dockerhub unlimited in it's CI, but smaller providers that do CI like srht are probably screwed. That's a shame for the entire ecosystem.
Yeah tools and common container format is why it got popular but with amount of alternatives that's not monetizable either.
Docker desktop is a smart move honestly, monetize stuff around the containers (managing, making sure its secure) that generally requires a lot of knowledge without it, so the pitch is not just "make the job easier" but "maybe allow company to skip hiring person(s) dedicated to running the whole house of cards"
This is a self inflicted wound. They placed themselves there but never though about the costs of running a free service with PBs of traffic.
> On the other hand, it also provides immense value to enterprise and even smaller customers, too, clearly
And they should had taken money from enterprise from the day 1 for Hub services.
Hindsight is 20/20, of course, but then I learned about Docker "eco-system" (especially things like Watchtower) the traffic costs was one of the first things what I though about.
Small business selling is much more like selling to consumers.
My company received the memo from Docker to upgrade to paid version, and I helped many to move on to Podman. However there were teams for which getting a Docker Desktop license was easier than the Podman move. I am sure there are many more companies that can easily afford the convenience of Docker Desktop for a trivial fee.
(I was already working on those instructions when the pricing change reached our attention, so it became a viable free alternative only by coincidence, but still.)
One other thing I learned: HN crowd is biased towards people who want to learn and understand their tools to a degree. Workplace use of Docker has large component of people who don't know what Docker is for and don't really care, but they need it for some task, so they want a hassle-minimizing option they can use to get their job done, and then forget about.
I bet it's a huge market, not just for Docker, but any other software tool. One that's somewhat alien to the HN audience.
In hindsight, I would say, it costs several man-months of senior engineers' with good connections in various departments.
And this comes on top of productivity losses prior to the solution.
Not meant negatively towards Podman, maintaining such a package in a constantly moving ecosystem is hard. The point is more that you pay Docker to do the extensive testing for you, so that the work-stopping issues are ironed out before they roll out to customers.
And yet there are horror stories of finance not approving purchases that would significantly improve productivity.
While obviously greater than the $5/9/24 you bring up, I've heard of companies not wanting to buy a second monitor for their engineers, whereas I'd wager the productivity gain would pay for itself in only a couple months.
Pricing virtual assets is hard
Especially on servers, and especially if for some stupid reason licensed software need internet access to confirm it is licensed, coz that's extra crap that needs to be added on proxy or firewalls and will inevitably break when they change something.
If it's "hey, pay us X and we trust you don't cheat us" yeah, it's just extra invoice ,whatever.
The whole of Docker Desktop isn't replaceable with a drop-in alternative today but parts of it are, and the rest could be very soon if an org with the resources and ability keeps developing things like podman.
So what would Docker as a company do when the equivalent of what happens to Swarm happens to Desktop? Pivot again?
Yes, but only because they ran a massive marketing campaign, and then achieved market penetration as a result of years of developer cargo-culting.
Containers have been around years before Docker, docker added a ton of bloat and a repository. So what? None of the predecessors (Jails, OpenVZ, etc.) needed tens of millions of dollars. Docker just capitalized on something that was open source and shamelessly monetized it. Great for them but not really worthy of admiration or anything to be remotely impressed by.
I think it's worth noting that the only thing they make much money off of now is their desktop application.
They made it possible for clueless users to "run containers" on Windows and Mac OS (nevermind it's just a Linux VM...). Technical users had long been capable of doing similar themselves with Linux or BSD or Solaris or what have you, but that's not the important piece of what Docker brought to the table.
(And yes, many developers are "clueless users" when it comes to this sort of thing)
that's exactly what they failed to deal with - Ops people were already fine & happy all the way with _existing_ solutions (they even know the difference between OpenVZ and Jails). Who was/is struggling is the Joe The Average Frontend developer and Project Managers hearing "sysadmins still setting up our Jails".
Or take from other angle - I'm on Windows, my colleague is on Mac, our grey beard devops guy is on Linux-Arch-Btw something - and we all can use the same Dockerfile and play around without not-giving-a-shit how it works under the hood and what kind of NAT/iptables/sysadmin-mumbo-jumbo is beneath. Total win!
True, but docker made it easy peasy. They came up with the packaging format and other things in a neat little package. This was what made everyone take up docker when it came out.
Isn’t this kind of monetization problem quite common for tech companies in general?
$135 mio in revenue is great, but they need 4.3 billion in profits.
Anecdotally, I use Colima on my Mac, and it is better than Docker Desktop in pretty much every way I can think of. I'm sure I'm not alone.
Generally, a company like Docker would sell support agreements (ie: how Red Hat does it), but selling support to developers rather than to support core infrastructure/production deployments probably wouldn't work. I hope they can figure it out and succeed.
Juicing ARR in a dying company is not rocket science, keep an eye on that number and compare it in 2025 or so to Apple or Microsoft.
- Fast networking: 30 Gbps! vs. 150 Mbps with Docker VPNKit. Full VPN compatibility, IPv6, ping, ICMP and UDP traceroute, and half-open TCP connections. (Future work: transparent proxies)
- Bidirectional filesystem sharing: fast VirtioFS to access macOS from Linux, but there's also access to the Linux filesystem from macOS. This can help with performance: for example, you could store code in Linux and edit it from macOS with VS Code (which can take the performance hit of sharing), so the container runs with native FS speed.
- Not limited to Docker or Kubernetes. You can run multiple full Linux distros as system containers (like WSL) so they share resources.
- Fast x86 emulation with Rosetta
- Bidirectional CLI integration like WSL
- Much lower background CPU usage. Only ~0.05% CPU usage and 2-5 idle wakeups per second — less than most apps, while Docker wakes up ~120 times per second. Made possible with low-level kernel optimizations. Also, no Electron!
- Better solutions to other problems that can occur on macOS: clock drift is corrected monotonically, dynamic disk size, and more I'm working on now. Will look into memory usage too, although I can't guarantee a good fix for that.
- No root needed
Planning to release it as a paid app later this month. Not OSS, but I think the value proposition is pretty good and there will be a free trial. Not sure about pricing yet. (Let me know if you have any thoughts on this!)
If anyone is interested, drop me an email (see bio) and I'll let you know when this is ready for testing, likely within a week or two at most :)
Also, feel free to ask questions here or let me know if there are other warts you'd like to see fixed.
Claims are good, proofs are key (and I'm curious how it will separate itself from LIMA :)
I sincerely wish you all the best and as said, really looking forward to the first set of demos (videos/streams)
It sounds like it has a ton of great features.
I guess virtualization is its own domain, much like video encoders, cryptography, and systems programming.
Feels like the gateway to those is C and assembly.
Recent reads include Mac OS on Docker, rooted John Deere tractors, jart's Blink work, and now this :)
If that's still an issue, then please figure out a way to make that seamless.
What makes it fast is support for modern NIC features that improve performance significantly, similar to those supported by Apple's in-kernel NAT (vmnet) but implemented in userspace. I've made changes to the guest kernel to implement these while working around limitations in Apple's Virtualization.framework. I'm not actually sure why it's slightly faster than vmnet in the host-to-guest direction (30 vs. 25 Gbps), but I'll take it.
Some snapshots of my journey working on the network stack:
https://twitter.com/kdrag0n/status/1606461436863352832
https://twitter.com/kdrag0n/status/1604288427306160128
Given the state of our internal tooling, we can conceivably move to podman or similar within the next year if the license fees become onerous, but, given the size of our org, we likely will just keep forking over license fees as it's cheaper than the salary to remove the dependency.
I found the first scenario that I actually wanted to pay Docker for- a dedicated, hosted Buildx runner. Not some multi-tenant thing that reads and writes a slow cache to S3 before and after every build. A fast one, that keeps the cache hot.
I'd pay 2x whatever the EC2 instance cost would be to have this managed and updated automatically.
Are FAANG and FAANG-like developers not using Linux machines locally despite deploying production software on Linux servers? Even for enterprise developers who use Mac and Windows, isn't 99% of day-to-day development on a Linux box you SSH into anyways?
I've never really quite grasped the need for Docker Desktop.
no
>isn't 99% of day-to-day development on a Linux box you SSH into anyways?
no
Also Ubuntu kinda breaks more for normal users.
Correct, because The Powers That Be often won't let them.
- company uses Microsoft stack (.net, SQL server, windows server), so its 100 employees are also on windows - company let's its 50 employees pick what they want, which is mostly MacOS
Why? Because it's less effort maintaining, and you don't run into compatibility problems for your other programs. With virtualization and docker, you can simulate your production servers much more easily than before!
Personally, I am a fan of Linux, having used Ubuntu, Debian and Manjaro, but nowadays use windows+wsl+docker for everything.
Docker compose and swarm are really cool technologies - easy to start with and more than enough for small and medium companies.
I really hope they would bring it back and we start seeing managed swarm from cloud providers.
https://techcrunch.com/2019/11/13/mirantis-acquires-docker-e...
So far all the alternatives are "mostly" compatible with caveats here and there.
On a personal note, I find the menu bar icon useful to see whether the VM is running and to pause/resume it (a functionality that none of the alternatives have).
On a personal note, I was fine with the change, since it allowed personal use still with docker desktop. When Docker Desktop for Linux came out, I gave it a try on a clean server. Unfortunately, even on a fresh Ubuntu install with fresh hardware, the reliability of Docker Desktop for Ubuntu was awful, crashing every few days into a stalled state. I had to make a cron job to watch it and maintain it's uptime.
Locally there's docker compose for the APIs (Java, python) and usually postgres. It's a good observation, interrupting that workflow would be quite a pain.
I have never met a single person who pays, or works for a company that pays, for Docker Desktop. Why would you?
Paying for Docker Hub seems like something that people do because they have to short-term, but there’s no genuine selling point to it long-term and I suspect people will migrate to self hosted solutions if they have not already, so it doesn’t strike me as particularly sustainable revenue.
it was interesting that a lot of the docker pricing model is about container image storage in docker hub, in the enterprise context i was working in, that job was already been done by running private container registries in the chosen cloud vendor's platform, so the docker hub offering didn't really add any value.
because I live in a bubble.
There is a world outside FAANG and related companies that dominate HN mindspace.
Because it's a hard requirement of the license and their salespeople will call your boss to ask why you're using the non-commercial install for company work?
Because the license often requires it.
Huh? I normally pay for Docker for hosting container images for K8 to pull from there. Why wouldn't I pay.
Also Google Cloud, Amazon, Azure, and even DigitalOcean.
Docker hub is cheap enough and convenient enough to compete against self hosted.
For self hosting you would need to manage/monitor, factor in redundancy, make it somehow easy to access to other tooling, etc...
Just the redundancy and storage would be more then 7$ pro plan dockerhub has.
If people already have setups in place for other things then it might make sense.
Then there's aws ecr and others... I don't like things that can surprise me when it comes to billing.
While in 2023, there are most certainly great alternatives that are relatively easy to install from the terminal and get going, I guess there's not yet a definitive replacement that comes with the GUI too. Best I can think of is Podman Desktop Companion[1] but not sure how well this works.
What a weird and gross series of words and concepts, all strung together like that.
By paying we didn't have to migrate anything and are now building and pushing every commit on our app as a 800mb image (I know its a little to big...). We are storing hundreds if not thousands of images and uploading / pulling TBs.
This kind of usage appears much pricier in container registry offered by cloud vendors
Their Rancher Desktop offering seems to be promising: https://rancherdesktop.io/
Much the same way how Podman Desktop seems nice: https://podman-desktop.io/
Though personally, Docker has always been a safe bet (both the desktop software, as well as the container runtime), I think I'll stick with it for a few years and let others take the early adopter risks, and use the alternatives when they've been more battle tested.
Because to some people using GUIs are more approachable and in some case objectively better (e.g. telling the state of things at a glance and efficiently using screen real estate, with graphs and whatnot), whereas the ways they're worse in might not dealbreakers (e.g. lack of automation, given that there can still be APIs or access to the underlying cluster anyways).
For an example of this, see pieces of software that one can use to manage orchestrators (essentially one step further than just running individual containers, but a good example of how UIs can be useful):
- Portainer: https://www.portainer.io/
- Rancher: https://www.rancher.com/products/rancher
Some orchestrators even include dashboards on their own:
- Kubernetes dashboard: https://kubernetes.io/docs/tasks/access-application-cluster/...
- Nomad web UI: https://developer.hashicorp.com/nomad/tutorials/web-ui
And some of that applies to running regular containers and managing them locally: for many it can be useful to be able to just click around to discover more details about a container, as well as what's using storage and so on. Thankfully the CLIs of Docker and competing runtimes are pretty well structured as they are, but I guess it's just a different type of UX.
At the end of the day, what works for you, or even what you find comfortable to use, might not be the case for someone else and vice versa. It's definitely nice to have that choice in the first place, and to know the various options out there.
Rancher Desktop has been working great for me, so I'm not sure they'll be able to keep increasing their numbers with so closely comparable free competitors. I'd be curious what the breakdown is in terms of how much of their value is from Docker Desktop vs. Docker Hub vs. ancillary features.
But for individuals it would be a complete different story. I've been playing with PodMan on linux in my home lab for a while now and I'm super happy with it, especially it doesn't need root in most of the cases.
My company is still small enough that we could use Docker Desktop for free, but I refuse to get sucked into such a shitty value proposition.
I question your competence if you can't run docker commands in a terminal and think $5 per month for a lousy electron app that wraps the commands with some buttons is good value. The fact they they are making $135M ARR and the company is valued at over a billion dollars is absolutely insane when superior alternatives that are Free exist.
I'm also pretty happy with the pro plan, it's pretty convenient to use as its default most places, free storage and transfers for images, no surprise costs.
Haven't seen the appeal of docker desktop though as linux user...
I'm a paying customer (through my company) and it's a pain in the ass.
Rancher Desktop supports k3s with containerd out of the box, which has no announced deprecation.
It's possible they plan to add containerd support to the built-in Kubernetes management of Docker Desktop once Docker is no longer supported, but I haven't heard about it.
Beyond that, I'm not aware of any technical advantages. For me Rancher Desktop essentially covers 99% of what Docker Desktop did, so just knowing that there won't be a point where it'll cost money is valuable.
git mv Dockerfile Containerfile
git mv .dockerignore .containerignore
brew install podmanThis seems like twist on the common play of subsidize with VC dollars until you have a large market share then increase the price to profitability.
The first attempt was to sell a crappy PaaS and container registry.
The second attempt was about monetising the desktop tools, more of a Dev tools play.
They have never really tried to bait and switch and monetise the Docker engine which always seemed like an open goal to me. $XX/year per engine and they would have been the next VMWare. Alas, seems like the current strategy is working well.
Alongside the change in strategy, I think there has also been a change in culture. Docker 1.0 was absolutely dripping in arrogance and weren’t set up for an enterprise sale. Developer tools seems like a much more natural fit.