Hacker News new | ask | show | jobs
by Phil-bitplex 1871 days ago
What is a alternative we can use?

My team and I often use Docker images as part of our development process on our desktop machines.

6 comments

I think GP is specifically complaining about "Docker Desktop" (the GUI), not "Docker" (the service) itself. Here are some alternative GUIs for managing Docker: https://www.cloudbees.com/blog/docker-guis/

Otherwise, VMs are usually overlooked as an alternative to "docker images", most probably because many people entered the industry after docker images became popular, and they don't know anything else. If you design it properly, stick with establish technology like QEMU, you can have the same environment without having to touch docker at all.

VMs are great. I've been using them for work stuff since Hardware virtualisation made it practical to run VMs with little or no performance penalty.

That said, swapping from Docker to VMs for things is nowhere near as simple or straightforward.

The near-frictionless ability to stand up/tear-down a 'known' good image and configuration, with the ability to swap in/out networking, volume or other environmental configuration is what made Docker so popular.

We use Docker containers for a wide range of things, and while we could reproduce all of that as VMs - it would take a lot more effort, and it would introduce a lot more delays waiting to build/replace a VM.

Run docker inside a VM on your desktop. That's what Docker Desktop is doing under the hood, isn't it?
I was responding to this section:

> VMs are usually overlooked as an alternative to "docker images",

> people entered the industry after docker images became popular

I don't think this is the only reason people use docker. Docker let's you compile an artifact and deterministically recreate that artifact at any point. When you want to deploy this artifact everything is hermetically included in it. No network access or startup time. Just starts and it's good.

If you have VM tooling that lets me do that without spawning a VM repeatedly and doesn't give me an effective way to modify the FS & copy my programs in (packer) then let me know. I haven't found anything VM related that's simple to use

In addition: vms still have a performance hit much more significant than processes.

For docker desktop you should be able to manage your own Linux VM install and forward the dockerd socket to your host machine and use the docker tooling with the appropriate DOCKER_HOST environment variable. As far as I remember, that's basically how docker desktop works.
On Linux, sure.
Or in WSL!
just plain docker in a linux vm? wsl2 if the host is windows.
Have you considered fat native binaries with C#/Go? Or is the app too complex with many external resources?
You can use docker-machine instead.
The Docker Toolbox repo is still hanging around, although in archived form: https://github.com/docker/toolbox

With 19.03 it should still be possible to access the public hub, I think.