paxys 3 days ago

Well it makes developing Docker Desktop infinitely easier for them, since they no longer need to start their own Linux VM under the hood. I think the software is "sticky" enough that people will still prefer to use Docker Desktop for the familiar CLI and UX, Docker Compose, and all the Docker-specific quirks that make migrating to a different container runtime basically impossible.

3
pxc 2 days ago

Docker Desktop on Windows uses WSL to provide the Docker daemon, doesn't it? So Docker Desktop has a history of leaning into OS offerings for virtualizing Linux like this where they can.

cosmotic 2 days ago

Docker desktop on macos uses the Apple virtualization framework to run a Linux VM these days.

https://developer.apple.com/documentation/virtualization

prmoustache 3 days ago

I never used docker desktop and am struggling to understand what you are supposed to be doing with a gui in a docker/container context.

stackskipton 2 days ago

GUI lets you look at logs quickly, there is buttons to click quickly open http://localhost:<port>, stop and start containers, get shell in container and bunch of other stuff that people developing or testing against containers need locally.

anon7000 1 day ago

Or even better (and free): https://github.com/jesseduffield/lazydocker

prmoustache 2 days ago

I am surprised a developer would not have chosen to redirect the port at run time already and would not be running the containers in the foreground in the first place.

stackskipton 2 days ago

So many developers don't learn docker. I'm Ops type person, outside FAANG, most devs are just flinging code at screen to close JIRA tickets, get the build to go green and collect a paycheck to go home. Docker, that's for us Ops people who have build that rickety pipeline that somehow manages to get your code into a container and into the Kubernetes cluster.

phinnaeus 2 days ago

Dropbox copypasta goes here

Spivak 2 days ago

I mean maybe but if you run your containers not via a GUI you get most of that for free or at worst with a docker logs or docker exec command.

Do people learn docker not via the CLI?

lenerdenator 2 days ago

They do, then they realize that it's not the core component of their jobs (unless they're ops) and it is easier to press a "stop" button to kill containers, at least in their use case.

DanHulton 2 days ago

I did. Well, I did until I found lazydocker, a TUI that handles the majority of the day-to-day stuff that I need to do that isn't already written into tasks in my justfile: https://github.com/jesseduffield/lazydocker

queenkjuul 2 days ago

I for one have been using docker on Linux for years and have to use a Mac at work, and I'm totally baffled by the fact i need to install docker desktop to use the CLI and don't get why you'd need or want the GUI.

And like I'm not all anti-GUI, it's just that docker is one of those things I've never even imagined using a GUI for

spockz 2 days ago

You don’t have to install docker desktop. The cli can be installed via homebrew. (Co)Lima, podman, or others, can be used to create a VM running the docker engine.

It’s just that Docker Desktop makes it easy and also provides other integrations like file system sharing etc.

selcuka 2 days ago

I mean, it's nice to have a GUI when running multiple containers on Docker, or Kubernetes, but I've never used Docker Desktop on my work Mac either.

For Kubernetes, something like K9s [1] or Headlamp [2] works fine. I remember seeing something similar for Docker but I can't remember the name.

[1] https://k9scli.io/ [2] https://headlamp.dev/

TheDong 2 days ago

I think there's a difference in that dropbox was targeted at regular users, not just developers.

I think docker desktop and apple's containerization are both targeted firmly at developers only.

It's like programming, sure it's possible to write code in microsoft office or xcode or vscode, but all programmers I've met opt for ed or vi.

pjmlp 2 days ago

Developers are users as well, I don't get the macho thing that developers always have to do it the hard way.

prmoustache 1 day ago

I don't get the thing that by default present cli usage as hard way compared to gui.

This can sometimes be true, but on many ocasion be the opposite: For instance I've been spending 3 hours watching an IT support techician seemingly clicking randomly everywhere to debug why the corporate sec/antivirus on my laptop is saying my configuration is not compliant. The provided gui and accompanied interface to check events is strikingly uninformative, slow and inefficient and having a simple cli tool with a -status or -report flag that would give you the reason it complain would be much easier to everyone involved.

pjmlp 1 day ago

You're assuming that the CLI tool would be any better, which in many cases are just as bad when coming from the same company.

arjonagelhout 2 days ago

For me, Docker Desktop is simply an easy way to launch the Docker daemon and inspect some created images and their corresponding logs. Other than that, the cli suffices.

hiccuphippo 2 days ago

We had to remove Docker Desktop at my job (I think they started asking for money?) and moved to Lima/Colima. If this project means one less program to configure to get my docker containers running then I'm all for it.

queenkjuul 2 days ago

Docker desktop for commercial use requires a license and they don't release binaries for Mac other than desktop. Seems like their one route to monetization. I use docker for literally only one build that doesn't work on native macOS so i love the idea of switching to a simple standalone CLI

bruckie 2 days ago

I use Rancher Desktop plus the FOSS docker CLI from Homebrew. Works well, and has no licensing issues.

dajtxx 1 day ago

The problem (as far as I can tell) is that for Windows and MacOS you can't install the docker daemon etc without installing Desktop.

I have a Mac for work and containers are a pain. I've tried Podman, UTM, colima, Docker Desktop etc and it all boils down to the same thing - run a linux VM and have the command line utils cooperate with the VM to run the containers.

It comes down to which solution has the least friction and irritations and Docker might still win there.

My current setup is UTM running a debian VM which I share my source directory with and ssh into to run docker. This is simpler for my brain to understand because the linux VM isn't a hidden component I forget to manage.

But it's not obvious how to mount the shared directory and I'm constantly running into networking problems - currently I cannot connect as myself and must sudo ssh for it to work. A reboot (of the Mac) used to fix it, but no longer does. I've given up trying to fix it and just sudo.

pxc 2 days ago

Imo, the GUI isn't really the most important part of things like Docker Desktop.

The nice part is that they (a) set up the Linux VM that runs the Docker daemon for you and (b) handle the socket forwarding magic that lets you communicate with it "directly" by running the Docker client on the host OS. This is likewise true for Podman Desktop, Rancher Desktop, etc.

The GUI is icing on the cake, imo.

bdcravens 2 days ago

Very few use the GUI for things other than configuring Docker engine settings like memory, etc.

coredog64 2 days ago

Unless this provides an extremely compatible Docker socket implementation, this is the answer. When Docker changed the licensing for Docker Desktop, my previous employer made it harder to get permission. However, there were a few tools that were in common usage, and once you mentioned that you used them, you got your permission.

Some progress has been made to create a non-Docker implementation that integrates with all those random tools that expect to be able to yeet bytes into or out of the Docker socket, but I still hit blockers the last time I tried.