Live data from Hacker News

Podman Desktop: A Free OSS Alternative to Docker Desktop

podman-desktop.io

151–160 of 202 posts

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#152
post #38

Talking about containers: is there an easy way to run “system” containers? This is, containers that run systemd and everything else you would expect to be running on a normal Linux OS. I rely heavily on VMs to simulate cloud environments, but I would love to use lightweight containers instead. Also, these “system” containers should be able to run containers inside them as well (docker in docker?). I saw something on…

"these “system” containers should be able to run containers inside them as well (docker in docker?)."

I think you can run podman in podman. But your comment actually makes me wonder how easy it would be to run docker/podman in chroot

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#153

Recently I started using colima[0], a drop in replacement for Docker Desktop on Mac, and have seen an increase in performance and battery life. You can use all the normal docker and docker compose commands. It does not have a GUI but you can use the Docker extension on VS Code to have an overview of running containers. [0] https://github.com/abiosoft/colima

Sorry but off topic.

At what point did containerization begin to make sense for your workflow?

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#154
Nice to see some alternatives for docker for mac. If you want to keep it simple, simply running a vm (on your device or remotely) and let the docker client talk to it via ssh. I used qemu for this a while ago as it seems is podman.

All you need to do for this is set the DOCKER_HOST variable. It gets slightly tricky with e.g. volume mounts of course. But otherwise this works fine. Including with docker-compose. The only other thing you need to do is some port forwarding from the vm; which you can do with ssh as well.

Podman, Colina, and other tools are essentially just nicer versions of this with a bit more features.

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#155
post #68

Earlier quoted context omitted.

On windows, docker desktop can use Hyper-V, but it also supports WSL2 as a backend.

The DD WSL2 backend is also creating a VM in Hyper-V. Actually, it's creating two VMs (docker-desktop and docker-desktop-data). It's also running a proxy in your WSL2 VM so you can access the docker server. It's all a bit convoluted TBH. I actually decided today to stop using DD on my Windows machine and just run docker native inside the WSL2 VM instance instead. Still not sure what solution I'm going for on my Mac.

I do the same for the most part. I have the docker daemon setup both locally in Windows and also in WSL2. I then have multiple contexts setup in Windows so that I can easily switch between Windows/Linux containers from my host terminal. Thus far, I've not experienced any issues.

The initial setup was a little more complex than just running Docker Desktop, but since then, it's running flawlessly.

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#156
post #73

Earlier quoted context omitted.

I assume `brew install docker` just installs the docker CLI/etc, which can run on non-Linux OSes. However the docker daemon can only run on Linux, so something needs to setup a VM for it.

Homebrew handles this kinda poorly, so people are often confused. `brew install docker` installs the Docker CLI. `brew install --cask docker` installs Docker Desktop, and if you've permanently tapped homebrew-cask you'll get that instead of the Docker CLI.

omg that is terrible

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#157
post #89
post #68

Earlier quoted context omitted.

On windows, docker desktop can use Hyper-V, but it also supports WSL2 as a backend.

The WSL2 backend is pretty broken from my experience, it will often lock up using 100% CPU after I put my laptop into sleep/hibernation, and the only reliable way to bring it back seems to be killing the VM in task manager and restarting. Dunno if this is Windows' fault or Docker's though.

Same here. I do not have admin rights on the machine so, unless I'm mistaken, I don't have any other option but to reboot.

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#158

I really tried to use Podman, but I kept running into issues trying to get a rootless deployment on RHEL that used a protected port (53) and it gave me so much trouble that I uninstalled Podman and installed Docker. Maybe I can try again, but it was frustrating enough to turn me away for a while.

If you want something as non-root to bind below 1024, there's a sysctl for it.[1] Docker bypasses this essentially because it uses root privs to set up the port forwarding rules. [1]: https://www.kernel.org/doc/html/latest/networking/ip-sysctl.... -> ip_unprivileged_port_start

It's not enough in some cases, in a multi container pod (with `podman play kube`) I still got permission issues binding to privileged ports (which were permitted by the sysctl). There was some github issue about it.

In my experience, if you need to bind to < 1024 ports, just run the container as root. Also if you want finer-grained control of host-side permissions of your mounts (i.e. map host uid 1000 to container uid 99). Otherwise rootless is fine.

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#159

I really tried to use Podman, but I kept running into issues trying to get a rootless deployment on RHEL that used a protected port (53) and it gave me so much trouble that I uninstalled Podman and installed Docker. Maybe I can try again, but it was frustrating enough to turn me away for a while.

Running into edge issues and always trying to figure out if it was my container, Podman, or SELinux is making me very close to installing regular docker.

I want to love SELinux, sounds great, I can see the real value in it. Tried to deploy some containers on an SE system and it would block everything. Ok expected, it actually has great tools for discovering, suggesting and creating rules to poke holes where needed, but it only suggests those things post-facto.

So basically you're left deploying a container and waiting for something to break, then inspecting SE logs and patching rules in (and folding all that back into your ansible or whatever).

Maybe this is OK if its your application and you can dump it on a staging environment and push it through your 100% coverage end to end test suite to capture all requirements, but if its a third party - or maybe your test coverage isn't quite where you want it to be - you're basically walking out on the rope bridge blind.

Not sure there is really a way to solve that. Perhaps it there was a `pledge`/`unveil` like system where all requirements can be discovered up front... Otherwise it felt like yours stuck running in SEDisable or SEPermissive for months collecting data (after every deploy).

Maybe I just missed an obvious route to disable swaths of SELinux for rootless containers - where it probably doesn't have as much of an application.

Sorry Dan Walsh :(

Re: Podman Desktop: A Free OSS Alternative to Docker Desktop

#160

Seems cool and I like seeing more alternatives to Docker Desktop. However, another electron app makes sad a little.

The tray app is optional so you can still have the engine (podman machine on Windows/macOS) running without any UI.
Post reply on HN