Live data from Hacker News

I ditched Docker for Podman

codesmash.dev

221–230 of 670 posts

Re: I ditched Docker for Podman

#221
post #189

I started working at Red Hat this past year, so obviously all Podman, all day long. It's a super easy switch. I moved to using Containerfiles in my LinkedIn courses as well, if for no other reason than it having a much more "open" naming convention! Rootless works great, though there are some (many) images that will need to be tweaked out of the box. Daemonless works great as well. You can still mount podman.sock lik…

> that doesn't support the full spec

I'd guess that's because "the spec" is more .jsonschema than a spec about what behaviors any random version should do. And I say "version" because they say "was introduced in version $foo" but they also now go out of their way to say that the file declaring what version it conforms to is a warning

Re: I ditched Docker for Podman

#222
post #194
post #14

I love podman, and, like others have said here, it does not always work with every container. I often try to run something using podman, then find strange errors, then switch back to docker. Typically this is with some large container, like gitlab, which probably relies on the entirety of the history of docker and its quirks. When I build something myself, most of the time I can get it working under podman. This situ…

I presume that the bulk of your issues are with container images that start their PID 1s as root. Podman is rootless by default, so this causes problems. What you can do if you don't want to use Docker and don't want to maintain these images yourself is have two Podman machines running: one in rootful mode and another in rootless mode. You can, then, use the `--connection` global flag to specify the machine you want…

This is terrific advice and I would happily upvote a blog post on this! I'll look into exactly this.

Re: I ditched Docker for Podman

#223
post #55

Earlier quoted context omitted.

From the official docs: >This section describes how to install Docker Engine on Linux, also known as Docker CE. Docker Engine is also available for Windows, macOS, and Linux, through Docker Desktop. https://docs.docker.com/engine/install/ I'm not an expert but everything I read online says that Docker runs on Linux so with Mac you need a virtual environment like Docker Desktop, Colima, or Podman to run it.

Docker desktop will run a virtual machine for you. But you can simply install docker engine in wsl or in a VM on mac exactly like you would on linux (you give up maybe automatic port forwarding from the VM to your host)

> But you can simply install docker engine in wsl or in a VM on mac exactly like you would on linux (you give up maybe automatic port forwarding from the VM to your host)

and sharing files from the host, ide integration, etc.

Not that it can't be done. But doing it is not just, 'run it'. Now you manage a vm, change your workflow, etc.

Re: I ditched Docker for Podman

#224

One challenge I have come across is mapping multi-UID containers to a single host user. By default, root in the container maps to the user running the podman container on the host. Over the years, applications have adopted patterns where containers run as non-root users, for example www-data aka UID 33 (Debian) or just 1000. Those no longer map to your own user on the host, but subordinate IDs. I wish there was an ea…

Have you looked at idmapped mounts? I don't think it'll fix everything (only handles FS remapping, not kernel calls that are user permissioned)

I have not, thanks for the suggestion though.

A second challenge with the particular setup I’m trying is peer authentication with Postgres, running bare metal on the host. I mount the Unix socket into the container, and on the host Postgres sees the Podman user and permits access to the corresponding DB.

Works really well but only if the container user is root so maps natively. I ended up patching the container image which was the path of least resistance.

Re: I ditched Docker for Podman

#225
post #41

i'm the only one that wished docker swarm became the standard instead of k8s?

Swarm syntax is much better than the YAML sprawl of k8s. That said the underlying engine was pretty buggy and lack of customization for lower level components was a pain. Their whole plugin system was a great idea, but actual plugins developed by vendors ended up being very brittle. That said, yeah I'd prefer that timeline

Re: I ditched Docker for Podman

#226

The main issue is podman support on Ubuntu. Ubuntu ships outdated podman versions that don't work out of the box. So I use podman v5, GitHub actions uses podman v3, and my coworkers on Ubuntu use docker. So now my script must work with old podman, recent podman and docker

Yeah, the lack of an official upstream .deb that is kept up to date (like the official Docker .deb repos) for Ubuntu really kills using podman for most of my internal use cases.

Re: I ditched Docker for Podman

#227

If you are on a Mac, I have been using OrbStack[1] and it has been fantastic. I spin up few containers there, but my biggest use is just spinning up Alpine linux and then running most of my Docker containers in there. [1] https://orbstack.dev/

You mean, you let Docker containers run inside the OrbStack container, or how does that work?

Re: I ditched Docker for Podman

#228
post #209

Earlier quoted context omitted.

Is linking to a 404 page meant to highlight the lack of docs, or is there some mistake?

Apparently the documentation was just updated. The new location is https://docs.podman.io/en/latest/markdown/podman-quadlet.7.h...

I do believe you about the "updated" part, and that's a constant hazard with linking to "latest" or "main" of anything. But I don't know why you'd then change the actual file in the URL, since the original comment was citing "podman-systemd.unit.5.html" https://docs.podman.io/en/v5.6.1/markdown/podman-systemd.uni...> and you've chosen to cite quadlet.7

Re: I ditched Docker for Podman

#229
post #147
post #46

Earlier quoted context omitted.

> On the plus side, any company I work for doesn't have to worry about licences. Win win! Was this a deal breaker for any company? I ask because the Docker Desktop paid license requirement is quite reasonable. If you have less than 250 employees and make less than $10 million in annual revenue it's free. If you have a dev team of 10 people and are extremely profitable to where you need licenses you'd end up paying $9…

Reading through the comments here, it looks like there is an opportunity for a startup to streamline software licensing. Just a free tip.

There are already software licensing providers such as 10Duke that do exactly that. Pretty much all of the licensing related problems mentioned here would either disappear or at the very least get dramatically simpler if more companies used 10Duke Enterprise as their licensing solution to issue and manage licenses. There is a better way, but sadly most businesses overlook licensing.

(the company I work for uses them, our licensing used to be a mess similar to what's described here)

Re: I ditched Docker for Podman

#230
post #67
post #51

Earlier quoted context omitted.

The problem isn’t generally the cost, it’s the complexity. You end up having to track who has it installed. Hired 5 more people this week? How many of them will want docker desktop? Oh, we’ve maxed the licenses we bought? Time to re-open the procurement process and amend the purchase order.

A large company who is buying licenses for tools has to deal with this for many different things. Docker is not unique here. An IT department for a company of that size should have ironed out workflows and automated ways to keep tabs on who has what and who needs what. They may also be under various compliance requirements that expect due diligence to happen every quarter to make sure everything is legit from a licen…

Yeah all of that is a huge pain and fantastic to avoid.
Post reply on HN