It also can integrate with Systemd via Quadlets. Let's you control containers as a sytemd service. I personally use them for my home server and have been happy with it.
The learning curve for quadlets is quite harsh in my opinion. I started with podman compose 3 years ago for my homelab, because it allowed user containers.
I tried to migrate to quadlets unsuccessfully, several times over the years. it was only recently that my self-hosted Qwen was capable enough to figure out where I was messing up and automate the process a bit.
I probably wasn’t sufficiently motivated. It felt like podman compose is basically docker compose, but quadlets are a quite a bit different in form and function, so I was never able to grok them:
I remember trying it and my compose files blew up to multiple Quadlet files with a much larger total size (lines of code). I find that compose is just more concise and structured compared to Quadlets.
It does have a larger file size compared to compose, sure. The big advantage of quadlets is that systemd will handle things in the event of a failure. It makes it a great option for production environments where you will not need to update your config files as much. It also allows you to have more control over when each application starts, if they rely on a specific disk mount or service running on the system. I'm sure someone else can provide more benefits who use them in a production environment.
Fair enough. My requirements are simply: start all services when the machine has finished booting. And I can't remember the last time my system failed. Most that happened was a power outage, and Quadlets wouldn't have helped there either.
So in my case I much prefer simple and easy-to-read configs, over the complexity of integrating with systemd.
I migrated from docker containers on Unraid to using quadlets on RockyLinux. The Podlet utility helped a bit with taking an existing docker container and converting it to a quadlet. Also did thorough testing in a VM before swapping my server.
Interesting, just migrated away from Unraid myself. But chose Proxmox -> Debian -> Podman Containers instead. Any reason in particular you chose Rocky?
Are you sure about that? I see Copyright at the bottom (maybe the name) and is free only for personal tier, everything else costs money. Maybe some of the containers are open source per https://www.docker.com/products/trusted-content/open-source/ but I don't see where it says anywhere that the actual software that is docker is OSS let alone FOSS.
The version that is installable from the repositories of Linux distros is all open source. Docker itself, the container engine and runtime are all open source. Nobody cares about stuff like docker desktop or docker sbx, not only are they not critical to the software itself, they aren't that useful or valuable.
I don't mean Docker Desktop, I mean docker-cli and moby.
Just because something has a FOSS license and is open-sourced in some code forge doesn't mean that it effectively respects some (or even all) of the four freedoms.
No, Free means "Gratis", or "Free as in Free Beer", Libre means "Free as in Freedom".
That's way FLOSS is recommended to be used instead FOSS, because the latter can be prone to confusion.
This product contains software (https://github.com/creack/pty) developed
by Keith Rarick, licensed under the MIT License.
The following is courtesy of our legal counsel:
Use and transfer of Docker may be subject to certain restrictions by the
United States and other governments.
It is your responsibility to ensure that your use and/or transfer does not
violate applicable laws.
Use and transfer of Docker may be subject to certain restrictions by the United States and other governments. It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.
I found Docker pretty easy to install. Though apparently it's harder on windows, where they suggest you just use docker desktop, in which case, yeah, fair point. But I'd just put docker in WSL if I had the misfortune of having to use it on Windows.
I use docker since it's what I learned on a decade ago, and my nas that I started from supports docker bit not podman in the 'app store'. I have three other machines running plain Debian, but I would want everything to work together, y'know? I've got a set-and-forget setup and I'd rather not break things without substantial benefit...
Plus everybody is like 'it's the same thing, no learning curve' but then I start reading up on it and uhoh, learning curves :p
Plus everybody is like 'it's the same thing, no learning curve' but then I start reading up on it and uhoh, learning curves :p
Exactly this. I tried podman, as a "container" newb, based on the idea that it's a (better) drop-in replacement for docker, but it didn't work. My quick attempts to resolve it went nowhere, and there were no instructions for the container I was trying to spin up for podman to explain the differences required.
So, in frustration, I decided to try docker and it just worked.
Good enough for me, for now. I still prefer the idea of not having a daemon running with root privileges, so I'll likely move over to podman eventually, but I only have so much time to waste tinkering with my setup. And if it ain't broke, don't fix it.
In almost all cases podman will work as a drop-in replacement. Problems usually arise from podman not being rootful by default, which does make a difference in most scenarios that involve volume mounts, exposing ports or other kinds of host resource access. You can run podman as root and nowadays even docker as rootless (though at that point you might be better off with podman).
With every update they warn that any changes made outside the UI may be overwritten (only data in user directories is safe). I have edited a couple config files over the years that have sticked, but they expect the system directories to stay 'stock' and warn of data loss or system malfunction if changed. And since it's my nas it's a lot of data to be going yolo on, even with backups. Wayyyy to much risk for almost no benefit.
Idk, I was lazy and copied from here instead of going to one of my actual OpenBSD installations and checking. Could be different on other BSD style inits.
There are still various incompatibilities between the two, and it becomes relevant if you need to work with any organization that has standardized on Docker-specific tooling.
Rootless, better integrated with system, a bit faster and lighter on resources. Also it supports k8s style yaml configuration both ways and a lot of people are more familiar with them and they also provide some (minimal) interoperability.
If this is on Debian 12 I think the issue is that the default storage backend is VFS rather than Overlay, which burnt me as well as it is REALLY inefficient. Look up how to find out what you're using and change it if that's it. After doing that it's been really good for me :)
And on most people's machines too. So, this must either be an exotic Podman bug, or something not right with your setup. Not many options there, but I hope you'll find out what's wrong.
It is! If you want to reduce exposure to this you really have to make sure mdm disallows installing it. The numbers trigger regardless of seats, and then you’re on the hook for the licenses for every employee using it.
So even if as a matter of policy you don’t use docker desktop, it’s possible engineers still do.
Edit: An open source alternative to Docker Desktop. It has most of the same features. Occasionally I've run into something that doesn't work, but for the most part it's just peachy.
This! Podman rootless quadlets is so powerful and beautifully simple. Just look at that faaar superior security model and hos it doesnt even need a service to manage services because it just integrates natively with systemd
I replaced my entire container layer from Rocker Swarm way back with K8s. Then it dawned on me I dont want the pods to move to another node by themselves anyway and then I just moved to Podman quadlets managed Ansible.
Oh, and the podman pods are awesome as well.
Not the poster, but I kinda get this sentiment. For my laptop and things that I do for work, I prefer Podman. Better security posture out of the box, and I'm typically crafting my own pods to work a specific way.
But, if I am just trying to start up some app/service and I'm following the GitHub documentation with the project...I want to just copy and paste and there isn't a 1-for-1 for docker compose. Podman does have an alias package so you can say docker on the cli, but the "compose" part of it is not as good if I just want something to run without dicking with it.
So in short, if I'm making something with a container or want to have hands on control, I prefer Podman. If I'm running something "off the shelf", like just running someone's docker compose files files from their Github, I'm just running Docker man.
I use the docker compose plugin with podman and it's the same. My compose stack is massive with tons of services and I migrated it from docker to podman with no issues.
That's what I was thinking. I've barely ever understood it for deployments for large companies (even then I disagree, I think it's added overhead just to bypass poor processes) but at home? Nah, install everything together.
Keyword there being "feel". Cos it certainly does add security. Imo quadlets are easier to understand and write than compose files too, but to each thwir own ofc. Most important thing here is to work with what feels the most natural and making the best out of it 👍
I don't know how you would even compare them. Quadlets can do what Docker Swarm or Kube does with dynamic instances and dependency lifecycle management. Docker Compose doesn't have nearly the same features as Podman Quadlet.
Docker swarm uses compose files too. But really, when you have tools like Podlet that converts compose files to quadlets, it's a pretty good sign that the two fit 90% the same use cases.
I think its more than Compose does a small subset of what Quadlets can do. I can understand why if your only use case is Compose and you already like it, why change? For me, the rootless by default and daemonless nature of podman quadlets, and its clean design all make it the preferred choice.
Podman-compose also works rootless and without a daemon. Naturally since it's daemonless, it does require a separate systemd service if you want services to automatically restart (I forget exactly what that systemd service is called).
What do you mean by "clean design"? This is of course subjective but I just want to understand quadlets more.
If you are comfortable reading the source code for each project that is the most revealing way to see the difference.
In short, Docker has a lot more code because it duplicates a lot of kernel and systemd functionality (often poorly), uses multiple components that communication over grpc with each other to do things, requires setuid binaries, and defaults to running everything as root.
Podman, is a straight forward clean simple program that fully uses kernel and systemd interfaces rather than duplicating functionality. Quadlet is build on systemd generators and its use of templates via systemd instances lets you use deterministic dynamic configuration in ways that is unlike anything in Docker.
Ngl after trying out Rootless Podman on my system (I was playing with Distrobox) I kinda wanna switch my whole Homelab to it, I'm just lazy, afraid the move to rootless with blow up everything and have zero fucking free time.
I am running my entire homelab from podman quadlets (systemd managed podman containers) and it’s honestly very dope. Podman gets a bad rap for being second tier to docker but they legit have a bunch of awesome features for Linux users specifically that make it way nicer. Using systemd for docker status can add some misdirection occasionally, but having the logs from containers directly in journalctl alongside the rest of my system logs is amazing
Through a hacky Python script (podman-compose), but apparently it works. But IMHO there's no reason not to just rewrite compose files as quadlets. I think it's so neat that they work pretty much just like normal systemd units, it makes it feel a lot more logical especially if you're used to pre-container workflows.
One problem with Podman is that there isn't a lot of newbie-proof documentation, tutorials etc. partially because it's not as popular as Docker and partially because it's developed by Red Hat and they want you to get a RHEL license to access learning resources and support. But if you're good with man pages, this shouldn't be much of a problem, it's easy enough to figure out what to do.
I would recommend using the docker-compose cli pointed at a podman socket over podman-compose. I don't think anyone has been recommending podman-compose for quite a while now.
I used to do it the way you're recommending (before I had podman compose), but I got tired of installing docker compose, and haven't suffered enough for just using Podman compose, lately.
I do think more things are more likely to work the way you're saying. Compose doesn't seem to be standardized yet? And the original dev was probably using Docker compose - for any randomly selected project.
But when I can get away with podman compose, I do, as I recall it being much easier to setup.
Probably as good as it can, you shouldn't use docker compose with podman anyway, there are two alternatives (quadlets - they describe everything as a systemd units and kube yaml - they use standard k8s yaml files including pods, deployments, secrets, etc.), both arguably better than compose.
Podman is the RedHat implementation of the Open Container Initiative (OCI).
A Dockerfile and a Containerfile are both OCI. Docker and Podman can generally both use either.
Contrasted with Docker, Podman has better security defaults, and installers and licenses that are both actually open source. (Parts of Docker are open source. Parts are not.)
Docker used to lead with additional features beyond OCI such as Docker Compose, but Podman Compose has been a thing for a while, now.
The more mature a product is, the more likely it works perfectly with any OCI compliant tool.
For rookie work, I feel like there's still fair odds the developer only uses Docker and may rely on some anti-pattern that requires setting "bad security=ok" settings before their project will work in Podman.
I just use the native docker apps that truenas has preconfigured. The one time I needed a custom compose container I just bashed my face against the keyboard until it worked. This is how I feel about all containerization. There really should be an easier system. Nothing wrong with higher accessibility.
Docker has the advantage of fucking working.
Every time I use podman, something is wrong. Especially with networking. I mean good luck running a compose file first time.
Nowadays I run both. I always gives podman a go first. Almost always end up on docker
171 Comments
unitedwithme@lemmy.today · 174 pts · 1d
I choose Podman bc it's open source and that's kind of the reason for using everything as a container bc those are often also open source. Fuck docker
voytrekk@sopuli.xyz · 66 pts · 1d
It also can integrate with Systemd via Quadlets. Let's you control containers as a sytemd service. I personally use them for my home server and have been happy with it.
ArchAengelus@lemmy.dbzer0.com · 25 pts · 1d
The learning curve for quadlets is quite harsh in my opinion. I started with podman compose 3 years ago for my homelab, because it allowed user containers.
I tried to migrate to quadlets unsuccessfully, several times over the years. it was only recently that my self-hosted Qwen was capable enough to figure out where I was messing up and automate the process a bit.
I probably wasn’t sufficiently motivated. It felt like podman compose is basically docker compose, but quadlets are a quite a bit different in form and function, so I was never able to grok them:
voytrekk@sopuli.xyz · 25 pts · 1d
There is a tool named Podlet that can help translate to quadlets. I was able to fully translate my unraid and compose setups to quadlets.
hirihit640@sh.itjust.works · 2 pts · 23h
I remember trying it and my compose files blew up to multiple Quadlet files with a much larger total size (lines of code). I find that compose is just more concise and structured compared to Quadlets.
voytrekk@sopuli.xyz · 5 pts · 23h
It does have a larger file size compared to compose, sure. The big advantage of quadlets is that systemd will handle things in the event of a failure. It makes it a great option for production environments where you will not need to update your config files as much. It also allows you to have more control over when each application starts, if they rely on a specific disk mount or service running on the system. I'm sure someone else can provide more benefits who use them in a production environment.
hirihit640@sh.itjust.works · 1 pts · 13h
Fair enough. My requirements are simply: start all services when the machine has finished booting. And I can't remember the last time my system failed. Most that happened was a power outage, and Quadlets wouldn't have helped there either.
So in my case I much prefer simple and easy-to-read configs, over the complexity of integrating with systemd.
pjusk@lemmy.dbzer0.com · 1 pts · 16h
Are u running podman containers on Unraid or did you migrate away?
voytrekk@sopuli.xyz · 2 pts · 8h
I migrated from docker containers on Unraid to using quadlets on RockyLinux. The Podlet utility helped a bit with taking an existing docker container and converting it to a quadlet. Also did thorough testing in a VM before swapping my server.
pjusk@lemmy.dbzer0.com · 1 pts · 4h
Interesting, just migrated away from Unraid myself. But chose Proxmox -> Debian -> Podman Containers instead. Any reason in particular you chose Rocky?
pineapplelover@lemmy.dbzer0.com · 50 pts · 1d
Wtf I thought docker was foss. Fml man
moonpiedumplings@programming.dev · 65 pts · 1d
Docker is foss. Docker desktop and docker sbx are not.
unitedwithme@lemmy.today · 4 pts · 1d
Are you sure about that? I see Copyright at the bottom (maybe the name) and is free only for personal tier, everything else costs money. Maybe some of the containers are open source per https://www.docker.com/products/trusted-content/open-source/ but I don't see where it says anywhere that the actual software that is docker is OSS let alone FOSS.
NewOldGuard@lemmy.ml · 11 pts · 22h
The core of Docker is called Moby, which is open source on GitHub. So are docker-cli and compose
unitedwithme@lemmy.today · 4 pts · 16h
Ah, explains the whale!
Kangae_Hishiryo@scribe.disroot.org · 2 pts · 19h
It's FOSS, but not Libre, and more close to open-core than to open source.
moonpiedumplings@programming.dev · 3 pts · 19h
The version that is installable from the repositories of Linux distros is all open source. Docker itself, the container engine and runtime are all open source. Nobody cares about stuff like docker desktop or docker sbx, not only are they not critical to the software itself, they aren't that useful or valuable.
Kangae_Hishiryo@scribe.disroot.org · 1 pts · 18h
I don't mean Docker Desktop, I mean docker-cli and moby.
Just because something has a FOSS license and is open-sourced in some code forge doesn't mean that it effectively respects some (or even all) of the four freedoms.
moonpiedumplings@programming.dev · 2 pts · 17h
The version you get from Debian does respect all four freedoms.
kuberoot@discuss.tchncs.de · 1 pts · 4h
It can't be FOSS but not Libre, the Free in FOSS means Libre. And it also can't be FOSS but not opensource, of course.
Kangae_Hishiryo@scribe.disroot.org · 1 pts · 1h
No, Free means "Gratis", or "Free as in Free Beer", Libre means "Free as in Freedom". That's way FLOSS is recommended to be used instead FOSS, because the latter can be prone to confusion.
wonderingwanderer@sopuli.xyz · 8 pts · 1d
If you install the GUI it literally won't let you open it unless you agree to their telemetry...
pineapplelover@lemmy.dbzer0.com · 1 pts · 9h
Ah ok, that doesn't affect me but still, what a bummer
themaninblack@lemmy.world · 21 pts · 1d
It also works better sooo
ozymandias117@lemmy.world · 18 pts · 1d
Also, does Docker do rootless containers yet?
MoogleMaestro@lemmy.zip · 24 pts · 1d
It does, but it seems like it's still a bit of an afterthought. But it's getting better.
Still tho, podman is fine and I like the project as an alternative to docker.
andho@lemmy.zip · 2 pts · 1d
Docker rootless has been more stable for me than podman
EnsignWashout@startrek.website · 1 pts · 12h
I've had the opposite experience. Good to share our data points, though.
lena@gregtech.eu · 6 pts · 1d
Docker is open source though. Docker desktop is not.
unitedwithme@lemmy.today · 6 pts · 1d
So, the Docker engine is free, just not the software under certain stipulations. See I don't like that. A weird caveat for using it.
lena@gregtech.eu · 1 pts · 23h
What do you mean? I don't see any CLAs or anything like that in the source code.
https://github.com/moby/moby
https://github.com/docker/cli
Kangae_Hishiryo@scribe.disroot.org · 2 pts · 19h
This
NOTICEin both repos is weird asf:Also, they do limit some kind of uses if you don't pay.
lena@gregtech.eu · 3 pts · 18h
You mean Docker Desktop?
Also iirc all software developed in the USA is subject to those restrictions.
Kangae_Hishiryo@scribe.disroot.org · 1 pts · 18h
Oh, well, I didn't knew about that, yeah.
And, in part yes, but these restrictions also apply to docker-cli and moby, although to a lesser extent
lena@gregtech.eu · 0 pts · 15h
What restrictions? The ones on all US software or something else?
SlurpingPus@lemmy.world · 2 pts · 8h
That's true of all software. It may be subject to restrictions by governments. But in this case, it seems to refer to the fact that the US restricted export of cryptographic software, and seemingly continues to restrict. See also Bernstein v. United States.
EnsignWashout@startrek.website · 1 pts · 12h
Which can be a pretty big deal.
This works out to: The product is unencumbered, but the only reliable installer is encumbered as fuck.
That's a "no thanks", from me.
I don't need the sword of "Docker fucking with my colleague's ability to collaborate" hanging over each of my projects.
I'm not mad at folks using Docker for backwards compatibility. I just don't need to make the problem worse.
lena@gregtech.eu · 1 pts · 4h
I found Docker pretty easy to install. Though apparently it's harder on windows, where they suggest you just use docker desktop, in which case, yeah, fair point. But I'd just put docker in WSL if I had the misfortune of having to use it on Windows.
Kangae_Hishiryo@scribe.disroot.org · 5 pts · 19h
Also it's more secure and performant as it's rootless and daemonless.
tatterdemalion@programming.dev · 1 pts · 10h
What exactly is your problem with Docker? It's open source.
Also closed-source container images exist.
unitedwithme@lemmy.today · 1 pts · 9h
Haha idk, nothing really. Just found a lot of recommendations over Docker for podman.
CIA_chatbot@lemmy.world · 132 pts · 1d
Why would you use docker when you could use podman?
wreckedcarzz@lemmy.world · 49 pts · 1d
I use docker since it's what I learned on a decade ago, and my nas that I started from supports docker bit not podman in the 'app store'. I have three other machines running plain Debian, but I would want everything to work together, y'know? I've got a set-and-forget setup and I'd rather not break things without substantial benefit...
Plus everybody is like 'it's the same thing, no learning curve' but then I start reading up on it and uhoh, learning curves :p
definitemaybe@lemmy.ca · 39 pts · 1d
Exactly this. I tried podman, as a "container" newb, based on the idea that it's a (better) drop-in replacement for docker, but it didn't work. My quick attempts to resolve it went nowhere, and there were no instructions for the container I was trying to spin up for podman to explain the differences required.
So, in frustration, I decided to try docker and it just worked.
Good enough for me, for now. I still prefer the idea of not having a daemon running with root privileges, so I'll likely move over to podman eventually, but I only have so much time to waste tinkering with my setup. And if it ain't broke, don't fix it.
anyhow2503@lemmy.world · 2 pts · 16h
In almost all cases podman will work as a drop-in replacement. Problems usually arise from podman not being rootful by default, which does make a difference in most scenarios that involve volume mounts, exposing ports or other kinds of host resource access. You can run podman as root and nowadays even docker as rootless (though at that point you might be better off with podman).
andho@lemmy.zip · 1 pts · 1d
Use docker rootless.
jumping_redditor@sh.itjust.works · 1 pts · 1d
same, docker just works when I'm trying to use version pinning on half my containers so they don't try using the wrong rocm version
Kangae_Hishiryo@scribe.disroot.org · 1 pts · 19h
Just use the repositories in the terminal...
wreckedcarzz@lemmy.world · 1 pts · 17h
What?
Kangae_Hishiryo@scribe.disroot.org · 1 pts · 16h
I mean, install it from the repos through your package manager in the terminal, on your NAS.
wreckedcarzz@lemmy.world · 2 pts · 16h
With every update they warn that any changes made outside the UI may be overwritten (only data in user directories is safe). I have edited a couple config files over the years that have sticked, but they expect the system directories to stay 'stock' and warn of data loss or system malfunction if changed. And since it's my nas it's a lot of data to be going yolo on, even with backups. Wayyyy to much risk for almost no benefit.
diaphragmwp@discuss.tchncs.de · 9 pts · 1d
Why would you use podman when you could
CIA_chatbot@lemmy.world · 3 pts · 22h
Oh why you gotta talk so dirty to this little chatbot
beernutz@lemmy.zip · 1 pts · 22h
Did you mean rc_start $1 as the last line of that script?
diaphragmwp@discuss.tchncs.de · 2 pts · 22h
Idk, I was lazy and copied from here instead of going to one of my actual OpenBSD installations and checking. Could be different on other BSD style inits.
CaffeinatedCubits@programming.dev · 3 pts · 19h
Some containers don't like non-root setups.
tatterdemalion@programming.dev · 0 pts · 10h
There are still various incompatibilities between the two, and it becomes relevant if you need to work with any organization that has standardized on Docker-specific tooling.
esc@piefed.social · 108 pts · 1d
Podman is a better choice.
gratux@lemmy.blahaj.zone · 12 pts · 1d
What's the benefit over Docker?
_cnt0@sh.itjust.works · 56 pts · 1d
Not requiring a service running in root context.
gratux@lemmy.blahaj.zone · 5 pts · 1d
While I've never used it myself, Docker Rootless mode seems to also allow this?
_cnt0@sh.itjust.works · 13 pts · 1d
10 years too late.
Johanno@feddit.org · 8 pts · 1d
It isn't that easy to setup. Podman just works
esc@piefed.social · 54 pts · 1d
Rootless, better integrated with system, a bit faster and lighter on resources. Also it supports k8s style yaml configuration both ways and a lot of people are more familiar with them and they also provide some (minimal) interoperability.
katze@lemmy.4d2.org · 1 pts · 1d
Can't confirm. I have two VMs with an identical image (about 200 MB).
Docker: Pulling the image takes about 10 seconds and needs about 200 MB diskspace.
Podman: Pulling the image takes about 15 minutes and needs about 110 GB diskspace.
Docker: Commands like "docker ps", "docker stop" etc. run in a few seconds.
Podman: Commands like "podman ps", "podman stop" etc. take at least one minute.
esc@piefed.social · 23 pts · 1d
Company confirmed that it is lighter and faster with multiple benchmark at the time of migration. Your case sounds like extreme misconfiguration.
katze@lemmy.4d2.org · 3 pts · 23h
I did not configure anything, I just installed it from the debian repository.
boo_@lemmy.blahaj.zone · 8 pts · 23h
If this is on Debian 12 I think the issue is that the default storage backend is VFS rather than Overlay, which burnt me as well as it is REALLY inefficient. Look up how to find out what you're using and change it if that's it. After doing that it's been really good for me :)
katze@lemmy.4d2.org · 1 pts · 5h
I am on Debian 13, but the storage might be the issue.
Allero@lemmy.today · 17 pts · 1d
Something is super wrong in your setup or some weird Podman bug on your side. Works flawlessly and quickly on my machine, no such issues.
Jyek@sh.itjust.works · 1 pts · 21h
Allero@lemmy.today · 1 pts · 20h
And on most people's machines too. So, this must either be an exotic Podman bug, or something not right with your setup. Not many options there, but I hope you'll find out what's wrong.
Jyek@sh.itjust.works · 2 pts · 20h
I'm not op. I just like to use the meme when I see the meme.
JackbyDev@programming.dev · 9 pts · 23h
How exactly is it using four orders of magnitude more space? Did you look what the files?
katze@lemmy.4d2.org · 1 pts · 5h
It is the ~/.local/share/containers folder.
asdfasdfasdf@lemmy.world · 1 pts · 1d
terminatortwo@piefed.social · 37 pts · 1d
At work, avoiding surprise licensing fees. If you ever have over 250 employees or over 10 million revenue, you owe a subscription.
At the home, easy orchestration with systemd
floquant@lemmy.dbzer0.com · 11 pts · 1d
Isn't that only for docker desktop?
terminatortwo@piefed.social · 4 pts · 1d
It is! If you want to reduce exposure to this you really have to make sure mdm disallows installing it. The numbers trigger regardless of seats, and then you’re on the hook for the licenses for every employee using it.
So even if as a matter of policy you don’t use docker desktop, it’s possible engineers still do.
JackbyDev@programming.dev · 3 pts · 23h
Yes. Rancher desktop exists, btw. Just an fyi.
Edit: An open source alternative to Docker Desktop. It has most of the same features. Occasionally I've run into something that doesn't work, but for the most part it's just peachy.
TerHu@lemmy.dbzer0.com · 1 pts · 1d
if you’re asking with regards to systemd orchestration, no. i love deploying containers as Ansible -> systemd -> podman.
trem@lemmy.blahaj.zone · 3 pts · 1d
No, they mean the license costs. I'm pretty sure, you only have to pay a fee for Docker Desktop...
TerHu@lemmy.dbzer0.com · 2 pts · 1d
my bad
TheMightyCat@ani.social · 106 pts · 1d
Mom, i can i have podman?
Mom: we have podman at home.
Podman at home: rootless docker
Sanctus@anarchist.nexus · 71 pts · 1d
I choose to use podman over docker because look at those cute seals 🥰
InternetCitizen2@lemmy.world · 7 pts · 1d
Also a solid technical reason for openSUSE
JcbAzPx@lemmy.world · 3 pts · 19h
They look like a water type dugtrio.
mlg@lemmy.world · 58 pts · 1d
Docker became a license nest despite actual devs using k8s like a normal person should.
Meanwhile podman gave us rootless containers, CDI, and quadlets which far outweighs whatever docker is limping to the barn with.
motogo@feddit.dk · 9 pts · 23h
This! Podman rootless quadlets is so powerful and beautifully simple. Just look at that faaar superior security model and hos it doesnt even need a service to manage services because it just integrates natively with systemd I replaced my entire container layer from Rocker Swarm way back with K8s. Then it dawned on me I dont want the pods to move to another node by themselves anyway and then I just moved to Podman quadlets managed Ansible. Oh, and the podman pods are awesome as well.
lengau@midwest.social · 29 pts · 22h
I'm curious why you feel this way? I'm kinda the opposite — podman has features I use that Docker doesn't.
todotoro@midwest.social · 8 pts · 20h
Not the poster, but I kinda get this sentiment. For my laptop and things that I do for work, I prefer Podman. Better security posture out of the box, and I'm typically crafting my own pods to work a specific way.
But, if I am just trying to start up some app/service and I'm following the GitHub documentation with the project...I want to just copy and paste and there isn't a 1-for-1 for
docker compose. Podman does have an alias package so you can saydockeron the cli, but the "compose" part of it is not as good if I just want something to run without dicking with it.So in short, if I'm making something with a container or want to have hands on control, I prefer Podman. If I'm running something "off the shelf", like just running someone's docker compose files files from their Github, I'm just running Docker man.
lian_drake@lemmy.world · 3 pts · 9h
I use the docker compose plugin with podman and it's the same. My compose stack is massive with tons of services and I migrated it from docker to podman with no issues.
wholookshere@lemmy.blahaj.zone · 3 pts · 19h
There's a built in tool to rake docker compose files, and make quqdlets that worked just fine for me?
todotoro@midwest.social · 2 pts · 10h
That's neat, are you talking about Podlet? Your comment prompted me to search.
kettuli@lemmy.world · 29 pts · 1d
I use Podman (at work) because license fees.
elvith@feddit.org · 28 pts · 1d
You_guys_use_docker?.jpg
mushroommunk@lemmy.today · 2 pts · 21h
That's what I was thinking. I've barely ever understood it for deployments for large companies (even then I disagree, I think it's added overhead just to bypass poor processes) but at home? Nah, install everything together.
deathmetal27@lemmy.world · 27 pts · 20h
This is why I don't like Docker compared to Podman:
WolfLink@sh.itjust.works · 11 pts · 20h
I literally yesterday dealt with that. There’s an option to just turn off Docker’s firewall manipulation so you can do it manually.
Ramenator@lemmy.world · 3 pts · 16h
I had the same issue, but I just added my plain iptables rules to the DOCKER-USER table, which worked fine
theforceofvader1@sh.itjust.works · 1 pts · 19h
Please elaborate...
WolfLink@sh.itjust.works · 3 pts · 15h
https://docs.docker.com/engine/network/packet-filtering-firewalls/#prevent-docker-from-manipulating-firewall-rules
Basically put:
In /etc/docker/daemon.json
xavier666@lemmy.umucat.day · 3 pts · 7h
I may be dumb but I apply the firewall at the router level (OPNsense). That should be fine, right?
NocturnalEngineer@lemmy.world · 5 pts · 4h
Security should be layered. Ideally both network & server-based firewalls should be enabled.
observantTrapezium@lemmy.ca · 27 pts · 1d
Adding my voice: Podman is great
lian_drake@lemmy.world · 23 pts · 9h
Podman is unironically the better choice. Just try to make docker comply with your firewall...
altphoto@lemmy.today · 6 pts · 6h
Docker bypasses your firewall and runs as root. Only an idiot would allow that shit.... I'm an idiot. But I'm fixing that.
vivalapivo@lemmy.today · -5 pts · 5h
Cult
Mwa@thelemmy.club · 20 pts · 22h
Atleast Podman is faster + does not require a centralised daemon
cunnililgus@sopuli.xyz · 2 pts · 22h
It doesn't and I'm sure there are benefits, but for basic home services daemonless translated directly into more work for no benefit.
pjusk@lemmy.dbzer0.com · 6 pts · 16h
Security is always a benefit 😎
cunnililgus@sopuli.xyz · 1 pts · 7h
Definitely, but then it feels like it comes with a cost rather than benefit of not having a daemon. You gain more control at the cost of convenience.
pjusk@lemmy.dbzer0.com · 1 pts · 4h
Keyword there being "feel". Cos it certainly does add security. Imo quadlets are easier to understand and write than compose files too, but to each thwir own ofc. Most important thing here is to work with what feels the most natural and making the best out of it 👍
CallMeAl@piefed.zip · 19 pts · 1d
podman quadlets are next level
hirihit640@sh.itjust.works · 8 pts · 1d
I dislike quadlets. Compose configs are way more concise, and just look nicer.
CallMeAl@piefed.zip · 4 pts · 23h
I don't know how you would even compare them. Quadlets can do what Docker Swarm or Kube does with dynamic instances and dependency lifecycle management. Docker Compose doesn't have nearly the same features as Podman Quadlet.
hirihit640@sh.itjust.works · 2 pts · 23h
Docker swarm uses compose files too. But really, when you have tools like Podlet that converts compose files to quadlets, it's a pretty good sign that the two fit 90% the same use cases.
CallMeAl@piefed.zip · 1 pts · 22h
I think its more than Compose does a small subset of what Quadlets can do. I can understand why if your only use case is Compose and you already like it, why change? For me, the rootless by default and daemonless nature of podman quadlets, and its clean design all make it the preferred choice.
hirihit640@sh.itjust.works · 1 pts · 14h
Podman-compose also works rootless and without a daemon. Naturally since it's daemonless, it does require a separate systemd service if you want services to automatically restart (I forget exactly what that systemd service is called).
What do you mean by "clean design"? This is of course subjective but I just want to understand quadlets more.
CallMeAl@piefed.zip · 1 pts · 1h
If you are comfortable reading the source code for each project that is the most revealing way to see the difference.
In short, Docker has a lot more code because it duplicates a lot of kernel and systemd functionality (often poorly), uses multiple components that communication over grpc with each other to do things, requires setuid binaries, and defaults to running everything as root.
Podman, is a straight forward clean simple program that fully uses kernel and systemd interfaces rather than duplicating functionality. Quadlet is build on systemd generators and its use of templates via systemd instances lets you use deterministic dynamic configuration in ways that is unlike anything in Docker.
SaltyIceteaMaker@lemmy.ml · 18 pts · 17h
i genuinely run all my shit bare metal
TheLastOfHisName@lemmy.world · 5 pts · 15h
🤘
dust_accelerator@discuss.tchncs.de · 15 pts · 1d
podman is great.
Only gripe:
I know, alias it, but man, I don't wanna.
pool_spray_098@lemmy.world · 21 pts · 1d
I mean, that definitely seems like a you problem.
fruitycoder@sh.itjust.works · 14 pts · 22h
Pomdan won't work on my system because that is my alias to send Dan a message that I would like some more Pom.
LiveLM@lemmy.zip · 12 pts · 12h
Ngl after trying out Rootless Podman on my system (I was playing with Distrobox) I kinda wanna switch my whole Homelab to it, I'm just lazy, afraid the move to rootless with blow up everything and have zero fucking free time.
porkloin@lemmy.world · 12 pts · 10h
I am running my entire homelab from podman quadlets (systemd managed podman containers) and it’s honestly very dope. Podman gets a bad rap for being second tier to docker but they legit have a bunch of awesome features for Linux users specifically that make it way nicer. Using systemd for docker status can add some misdirection occasionally, but having the logs from containers directly in journalctl alongside the rest of my system logs is amazing
justme@lemmy.dbzer0.com · 2 pts · 4h
i plan to set up my stuff like that as well, just don't find time :/
jaxxed@lemmy.world · 7 pts · 20h
All my homies use nerdctl anyway.
nanometer1625@thelemmy.club · 5 pts · 11h
Is that a dugtrio?
Tlaloc_Temporal@lemmy.ca · 2 pts · 5h
Alternate universe with Digong and Seetrio.
heartSagan5@lemmy.zip · 5 pts · 1d
How does podman handle docker compose tasks?
wylinka@szmer.info · 12 pts · 1d
Through a hacky Python script (podman-compose), but apparently it works. But IMHO there's no reason not to just rewrite compose files as quadlets. I think it's so neat that they work pretty much just like normal systemd units, it makes it feel a lot more logical especially if you're used to pre-container workflows.
One problem with Podman is that there isn't a lot of newbie-proof documentation, tutorials etc. partially because it's not as popular as Docker and partially because it's developed by Red Hat and they want you to get a RHEL license to access learning resources and support. But if you're good with man pages, this shouldn't be much of a problem, it's easy enough to figure out what to do.
andho@lemmy.zip · 5 pts · 1d
I prefer compose for development instead of quadlets. Actually I prefer compose either way although I use quadlets on my server.
With quadlets all projects files are in the same location and you need separate files for each container, volume, network, etc.
imsufferableninja@sh.itjust.works · 5 pts · 1d
They don't just work pretty much like systemd units; they are generated into systemd units
not@lemmy.dbzer0.com · 4 pts · 1d
Couldn't someone like you type up a short list with tips and tricks and post it where the newbies can find it?
anyhow2503@lemmy.world · 1 pts · 16h
I would recommend using the docker-compose cli pointed at a podman socket over podman-compose. I don't think anyone has been recommending podman-compose for quite a while now.
EnsignWashout@startrek.website · 1 pts · 12h
Interesting.
I used to do it the way you're recommending (before I had podman compose), but I got tired of installing docker compose, and haven't suffered enough for just using Podman compose, lately.
I do think more things are more likely to work the way you're saying. Compose doesn't seem to be standardized yet? And the original dev was probably using Docker compose - for any randomly selected project.
But when I can get away with podman compose, I do, as I recall it being much easier to setup.
esc@piefed.social · 5 pts · 1d
Probably as good as it can, you shouldn't use docker compose with podman anyway, there are two alternatives (quadlets - they describe everything as a systemd units and kube yaml - they use standard k8s yaml files including pods, deployments, secrets, etc.), both arguably better than compose.
andho@lemmy.zip · 4 pts · 1d
I've always had issue with
podman-compose. So I setup a podman socket and use it with docker compose.EnsignWashout@startrek.website · 1 pts · 12h
Haha. Yes. This meme would be more fair to call "podman compose" out as "we have Docker compose at home".
I'm not a fan of the compose pattern anyway. So it doesn't usually bother me.
peeteer@feddit.org · 3 pts · 1d
There's
podman-composeavailable through your package manager or pypi.EnsignWashout@startrek.website · 1 pts · 12h
That's one thing - installing and trying out Podman compose takes less time than remembering where to get Docker compose from.
I always at least try it first, because it's not expensive to try.
Sxan@piefed.zip · -2 pts · 1d
Surprisingly well?
It's rare when I have to look up special instructions for podman. Once þe setup is ironed out commands are mostly interchangeable.
Þe podman team have done a great job.
Axolotl_cpp@feddit.it · 11 pts · 1d
Can you stop using thorn? It's quite a problem for some people, it makes reading very hard for them
Idontknowanything@lemmy.world · 5 pts · 23h
What's podman?
tourist@lemmy.world · 17 pts · 22h
not much man how about you
fruitycoder@sh.itjust.works · 4 pts · 22h
It's a daemonless client for managing Linux containers. So any "docker" container. Most Linux distros have a native package for it too
EnsignWashout@startrek.website · 2 pts · 12h
Podman is the RedHat implementation of the Open Container Initiative (OCI).
A
Dockerfileand aContainerfileare both OCI. Docker and Podman can generally both use either.Contrasted with Docker, Podman has better security defaults, and installers and licenses that are both actually open source. (Parts of Docker are open source. Parts are not.)
Docker used to lead with additional features beyond OCI such as Docker Compose, but Podman Compose has been a thing for a while, now.
The more mature a product is, the more likely it works perfectly with any OCI compliant tool.
For rookie work, I feel like there's still fair odds the developer only uses Docker and may rely on some anti-pattern that requires setting "bad security=ok" settings before their project will work in Podman.
Your mileage may vary.
Railcar8095@lemmy.world · 3 pts · 22h
Am I the only one who struggles with podman permissions? Every time I try to use it one service or another doesn't work.
I tried for immich (only service I expose) and failed.
muusemuuse@sh.itjust.works · 2 pts · 22h
God I hate arguing with podman. Something doesn’t work and I can’t tell if it’s my quadlet or the app
CaffeinatedCubits@programming.dev · 1 pts · 18h
Linkwarden would not run without root.
ikidd@lemmy.dbzer0.com · 1 pts · 22h
I just use rootless docker, it's way less hassle.
jaxxed@lemmy.world · 2 pts · 20h
Switching colleagues over to Pdman desktop, whenever legal asks about licenses for DD. :)
Podman has some thngs rhat I don't like but it ften works much better, and a lot f really great tools use it natively (like distrobox)
0k_@lemmy.world · 7 pts · 20h
Is your keyboard ok?
Jyek@sh.itjust.works · 2 pts · 21h
I just use the native docker apps that truenas has preconfigured. The one time I needed a custom compose container I just bashed my face against the keyboard until it worked. This is how I feel about all containerization. There really should be an easier system. Nothing wrong with higher accessibility.
makefile@programming.dev · 2 pts · 21h
This meme taught me a lot with all these comments. Thank you
Peck@lemmy.world · 2 pts · 19h
Container manager in Synology. Why?
QueenMidna@lemmy.ca · 1 pts · 19h
It's why I just ran portainer instead
RVGamer06@sh.itjust.works · 1 pts · 45m
y'all use containers still? I run my site with native installed software configured by hand like a TRUE sysadmin!
user_user@lemmy.zip · 1 pts · 19h
docker/podman sucks, u can't avoid using journald for logging. U also can't avoid using overlayfs. Plain LXC is what I have at home
m8052@lemmy.world · -7 pts · 1d
Docker has the advantage of fucking working. Every time I use podman, something is wrong. Especially with networking. I mean good luck running a compose file first time. Nowadays I run both. I always gives podman a go first. Almost always end up on docker
crypt0cler1c@infosec.pub · 31 pts · 1d
Problem in chair, not in computer.
slazer2au@lemmy.world · 14 pts · 1d
Skill issue, as the youths call it these days.
Natanox@discuss.tchncs.de · 16 pts · 1d
I still know it as Layer 8 issue.
Sxan@piefed.zip · 5 pts · 1d
I know it as PEBKAC, closer to @crypt0cler1c's. I like Layer 8, þo.
MyNameIsRichard@lemmy.ml · 8 pts · 1d
We used to call it a carbon interface error.
moopet@sh.itjust.works · 4 pts · 1d
It was also a 1-oh-4 when I was young.
imsufferableninja@sh.itjust.works · 4 pts · 1d
I-D-ten-T error