I’m afraid this is going to attract the “why use podman when docker exists”-folks, so let me put this under the supposition that you’re already sold on (considering) using podman for whatever reason. (For me, it has been the existence of pods, to be used in situations where pods make sense, but in a non-redundant, single-node setup.)

Now, I was trying to understand the purpose of quadlets and, frankly, I don’t get it. It seems to me that as soon as I want a pod with more than one container, what I’ll be writing is effectively a kubernetes configuration plus some systemd unit-like file, whereas with podman compose I just have the (arguably) simpler compose file and a systemd file (which works for all pod setups).

I would get that it’s sort of simpler, more streamlined and possibly more stable using quadlets to let systemd manage single containers instead of putting podman run commands in systemd service files. Is that all there is to it, or do people utilise quadlets as a kind of lightweight almost-kubernetes distro which leverages systemd in a supposedly reasonable way? (Why would you want to do that if lightweight, fully compliant kubernetes distros are a thing, nowadays?)

Am I missing or misunderstanding something?

  • @[email protected]
    link
    fedilink
    English
    3
    edit-2
    6 hours ago

    I think the gap you have is in understanding that Podman Compose was meant to line up with the limitations of docker’s compose, but technically is more capable.

    Quadlet files let you do more complex workflows like deploying multiple copies of a service in your deployment that regular compose doesn’t, while not running full kube.

    The use I have is that I have something deployed in compose right now that I’d like to scale up on the box since i have the capacity for it, but dont want to deal with a full kube setup or the politic

    Personally I’ve converted most of my single node k3s to using quadlet files instead as its less fragile. I absolutely deploy single containers in the quadlet. They show up in journalctl and the ergonomics are great.

  • @just_another_person
    link
    English
    610 hours ago

    It’s a systemd-style way to manage podman containers that aims to be as easy to manage as compose/swarm. Not quite an integration, but operates similarly, and about as easy to read. Less heavy than managing a local micro-k8s cluster. That’s about it.

    • @[email protected]
      link
      fedilink
      English
      3
      edit-2
      9 hours ago

      Yup. I read it as “compose and manage containers with systemd.”

      Sure, there is a k8s layer abstracted into podman to do this, but you don’t manage or interact with it. Everything is a systemd unit file, a simple text document with a well understood structure. Containers are started and logged like services.

      Easy, direct, tidy.

  • Scrubbles
    link
    fedilink
    English
    210 hours ago

    From my understanding, I think you’re right, it’s some hybrid between single docker containers and just running k8s. If you’re nearing the point where you need to start distributing your containers, personally you might as well just learn kubernetes. It’s a massive learning curve, but frankly it’s still the best option.