this post was submitted on 14 Jul 2023
104 points (94.1% liked)

Selfhosted

40041 readers
722 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:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

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

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

As the title says. I build containers for my platforms/clients/myself-selfhosted@home and you would not believe how much smaller you can get your images. Here's an example when slimming one of my images:

cmd=build info=results status='MINIFIED' by='18.97X' size.original='1.0 GB' size.optimized='55 MB' 

That's a Python app that I didn't have to do multi-staged build with docker because of the Slim command. And it's a working version of that app that I'm using today.

Same for one of my flutter apps that I thought it was as small as it could be:

cmd=build info=results status='MINIFIED' by='1.98X' size.original='66 MB' size.optimized='33 MB'

TLDR: slim your container images!! https://github.com/slimtoolkit/slim

you are viewing a single comment's thread
view the rest of the comments
[–] Xepher@lemm.ee 25 points 1 year ago* (last edited 1 year ago) (6 children)

Are there any downsides to doing this?

[–] maor@lemmy.org.il 28 points 1 year ago* (last edited 1 year ago) (3 children)

It ptraces the main container process and cuts off unused files. It also fires some customizable HTTP requests to trigger any dynamically loading libraries. Clever idea. If I understand correctly, the problems that arise to me are:

  1. Undoubtedly some essential files will be omitted. Unless my image consists merely of scratch and an executable, I can't imagine myself successfully covering all edge cases.
  2. What about files that aren't loaded by HTTP requests?

I'm not shitting on this program at all. These are two problems that I'm sure they could solve or just tell straight up "we can't guarantee it'll work in XYZ scenarios. Don't use it if that's your use case". Then I saw that this is backed by some kinda SaaS with a domain that ends with .ai, and that explains why THAT FUCKING README IS WRITTEN like a FUCJik/INg MIND NUMBING LINKEDIN POST that my CEO could write bro what the fuck do you mean by simplifying the value of my digital assets in a seamless secure cost efficient way????? Who fucking cares??? ?WHat does your program ACTUALLY DO??????????

10000000s of seemingly AI-generated paragraphs going on and on about how convenient their product is, 1 measly line in a diagram that describes what it actually does. Again not to shit on the programmers at all, this is a great idea and I'm glad that it's being explored I just hate this industry I can't read another pile of gibberish like that. That ruined my night. Thanks for listening

[–] MaxVerstappen@lemmy.world 6 points 1 year ago

I can feel this reply. Cheers to a better weekend!

load more comments (2 replies)
load more comments (4 replies)