Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Docker is also a company that sells 3 of these as a product.

What's interesting is that for those 3 there are often better versions. Docker Engine is not used in a number of popular examples – GCP for example uses their own engine if I remember correctly. There are other pluggable runtimes. The Docker desktop app isn't great, and is now expensive, compared to a number of cheaper or free or open source alternatives. And Docker Hub is basically just for free public publishing, as Docker registries are so commoditised.

I've always felt that the best bit of Docker is the file format and the UX around that. But that's not something Docker-the-company has managed to monetise.



This is the correct view. Docker is a company selling some useful products, but the OCI (Open Container Initiative) format is what is interesting, and it can be used with many different tools not just Docker's.


In fact, I would guess that there majority of OCI images aren't used with docker at all, but by kubernetes [directly] on containerd


Docker engine uses containerd to run containers. Containerd was born from Docker company. Containerd is probably the most popular runtime for Kubernetes. GKE uses containerd as well.

Docker hub is absolutely the most popular registry for open source software and configured as default address for kubernetes.

Nothing of it is irreplaceable for sure. But Docker made a big contribution to container world, regardless.


I don't understand the need for Docker Desktop. When you install the docker-ce package, you get the docker client CLI and dockerd daemon managed as a systemd service. I have never seen anyone build or run images outside of the CLI. Why are people paying for a GUI wrapper?


Docker Desktop takes care of all the annoying config work needed to make Docker work on Windows, including managing virtual machine engines, configuring the windows firewall and the necessary magic to mount local drives in containers. Using Docker on Windows without Docker Desktop is a massive PITA.


It's trivial in WSL, but debatable whether you can really call that "on Windows".


Docker desktop is essentially just a GUI on a WSL2 vm image at this point.


Docker desktop creates and manages Linux VM with docker engine inside. It also does some magic to allow mounting host directories inside containers. I've yet to reproduce that magic, TBH.

It's obviously important for macOS, because macOS does not support docker containers.

While Windows supports docker containers, most docker containers are built for Linux, so Docker Desktop is important for Windows as well.

Now for Linux you can run docker engine on the host, if you're proficient with Linux. However some people use Docker Desktop on Linux as well. I could imagine that you can run very old host Linux this way.

I, personally, avoid docker desktop on macOS. Right now I'm using remote Linux VM and in the future I'll use Linux in VM, configured manually. However I've yet to find out how to mount host directories inside that VM containers. Some magic.


Mainly Windows users, followed by OSX I suspect.


It's actually more important on OSX because there is no equivalent of WSL.


Lima and colima fill the gap nicely


On Windows and Mac, Docker Desktop is the only way to install Docker. If you work for a big company that isn't using Linux then you need to pay just to use Docker.


I've used docker on windows a lot and it never even occurred to me to install Docker Desktop. I just use normal docker inside of WSL since that's where I do all my actual work when I have to use windows. It pretty much works exactly like Linux from what I recall although I can't test it now because my windows machine is broken.


Because people on Windows like GUIs instead of being stuck on MS-DOS like experience?


This is a hilarious comment because windows ignored the developer experience for YEARS with its horrible command line experience. Windows was a regression. Linux/unix, which powers the world by the way, is where it is at regardless of how old its foundations are.


And people on Linux like CLIs instead of being stuck on Win95 like experience.


Actually they are frozen on 1970's Bell Labs world, without realising how the world has progressed.


I think we just have to agree to disagree. My point was, modern Windows is nothing like Windows 95, just like modern command line experience is nothing like MS-DOS (as you seem to imply). Given a choice I strongly prefer command line for most tasks. Reducing my preference to ignorance rubs me in a wrong way.


Having been there when there was no other option, yes I pretty much consider some people prefer to be stuck in the past of green and amber phosphor terminals, like admiring the golden age of punch cards with diagonal red lines to avoid losing the deck order.


I love seeing this comment in a thread about OCI containers ( a deeply Linux technology ). This whole discussion is about the abstraction that people hav to use on Windows to make it work.

When you want to talk about how the world has progressed, I guess you do not mean Kubernetes or Docker. Give me an example of how Windows has changed the world in the last 30 years.


COM as universal technology to share commercial libraries, language agnostic.

Also the basis to share document manipulation across applications.

An usable 3D API, that has to be emulated on Linux, as not even Android developers care to port their games.

Making computing mainstream for non technical users, where locating where a file was saved is already a challenge in itself.

As for OCI containers, we are back in the 1970's, Linux is catching up with what IBM already did back then, still misses some of the cool capabilities of their mainframes.

It wasn't even the first as, Tru64 and HP-UX Vaults had the first container like capabilities in late 1990's, followed by Solaris Zones, BSD jails.


What are better alternatives to Docker desktop on Windows?

I am using Rancher desktop and number of bugs and lack of features would make paying for Docker desktop worthwhile if I used it more than ~1 hour per week.


This is a weird question: why would you use anything like Docker Desktop to begin with?

I didn't even know Docker Desktop existed until couple months ago. My wife works on MS Windows and she needed to run someone's project that was for some reason distributed in Docker images... She couldn't get Docker installed on Windows, but that's kind of expected as everything is kind of screwy there... so, I had to use Web search to figure out what is the way to do it (she did try to get Docker Desktop).

I ended up configuring Hyper-V (solely because it comes bundled with the system) and installing Docker in some Arch VM I set up for that.

I cannot claim that this is a "comfortable" setup, but given the overall bad UX of that OS and that Docker isn't designed to run on it from the start, I think it's an OK solution.

I briefly tried opening the Docker Desktop GUI, and I just cannot understand why would anyone need that specific thing... it just seems to make everything worse at the baseline. You immediately miss the convenience of being able to feed the output it produces into grep / pager or to combine information extracted from one output with the input into another operation.


Lol, this is exactly where I'm at. I push others to do wsl2 + podman but I'm doing Hyper-v myself just because fighting cgroup and systemd stuff was quite annoying. Further, you get some really nice space saving with the btrfs driver.


Maybe her work changed some settings in Windows? From a clean install of Windows I thought Docker Desktop installed fine for me but WSL2 needed me to change some setting.


It was definitely not a clean Windows install. She inherited this laptop from someone else, and it wasn't well "cleaned up" (some previous user settings were still there). Also, the IT had put some restrictions on how Hyper-V could be used, I think, or maybe have pre-configured it somehow (most likely unintentionally, when configuring something else).

The sort of problems it was having were related to virtualizing the network adapter. Somehow after about half an hour it would just "stop working". Since it's Windows... no debugging, no logs, and the Web search brings up a lot of nonsense when you try to figure out the problem. The kind of "stop working" was that the host could still use the adapter, but the guest system (the one running Docker) would still have an IP, knew the IP of the router... but sending anything to the outside world (i.e. the router) would end up lost.

Maybe it was a faulty adapter. Maybe faulty Windows driver, or maybe a problem in Hyper-V / its settings... I never figured it out. The same problem existed if I tried to do it with any VM I'd create there, if I tried to virtualize the adapter, so it wasn't unique to Docker. Eventually, I've given up on the idea of having a virtualized adapter, and put the VM in its own NAT'ed network.


I've heard good things about Podman https://podman.io


Maybe https://podman-desktop.io/ ? I haven't used it myself though, so I can't vouch for it.


If you don't need to access `docker` command from Windows, just install docker using the same way you would install docker on a regular Linux in WSL2. (e.g. sudo apt install docker-ce, curl https://get.docker.sh/)


Podman in wsl2 works fairly well. However, there are some rough edges that you'll have to smooth out. (Such as setting up the docker host and fighting the podman socket stuff if you need it).




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: