this post was submitted on 02 Nov 2023
54 points (95.0% liked)

Selfhosted

60526 readers
1293 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Max_P@lemmy.max-p.me 3 points 2 years ago (1 children)

I'd go Docker for the maturity. Podman is nice but I've definitely had some issues, and Buildah lacks any sort of caching and does unnecessary intermediate copies of the layers when pushing to a repository that really slows things down on larger apps/images.

[–] iluminae@lemmy.world 3 points 2 years ago* (last edited 2 years ago) (1 children)

Buildah lacks any sort of caching

... what? assuming you are using a Containerfile.... what? It's.... the same as docker on layer caching. The --cache-to and --cache-from flags are particularly sweet.

[–] Max_P@lemmy.max-p.me 0 points 2 years ago (1 children)

Maybe they changed it since last year, but it wouldn't cache layers for me. Everytime I'd rebuild the app, it would re-run all the actions from the Containerfile. So a whole npm install each build even though I only changed a source file. Building the exact same file with Docker cached every layer as expected, so a config change would only change the last layer and be basically instant vs 5 minutes.

The other issue with pushing to a registry was that it made a whole temporary tar of the image, then gzip it to disk again before starting to upload it. It blew up the disk space I had allocated to my VM really fast, and made uploading those images take minutes instead of seconds. Docker again seemingly does it all in a streaming fashion as it uploads, making it much faster.

This could have changed though, it's evolving fast. Just didn't fit my use case then. But because of those experiences, I'd say it's probably a safer bet to learn Docker first since documentation is abundant, and there's no little "oh I'm using Podman and have to use a slightly different syntax" gotchas to run into to make it hard for you.

[–] worldofgeese@lemmy.world 1 points 2 years ago* (last edited 2 years ago)

This sounds like something on your end as I get cached builds every time, rootlessly even. Podman also supports cache mounts.