this post was submitted on 25 Aug 2025
785 points (98.9% liked)

Showerthoughts

36884 readers
1160 users here now

A "Showerthought" is a simple term used to describe the thoughts that pop into your head while you're doing everyday things like taking a shower, driving, or just daydreaming. The most popular seem to be lighthearted clever little truths, hidden in daily life.

Here are some examples to inspire your own showerthoughts:

Rules

  1. All posts must be showerthoughts
  2. The entire showerthought must be in the title
  3. No politics
    • If your topic is in a grey area, please phrase it to emphasize the fascinating aspects, not the dramatic aspects. You can do this by avoiding overly politicized terms such as "capitalism" and "communism". If you must make comparisons, you can say something is different without saying something is better/worse.
    • A good place for politics is c/politicaldiscussion
  4. Posts must be original/unique
  5. Adhere to Lemmy's Code of Conduct and the TOS

If you made it this far, showerthoughts is accepting new mods. This community is generally tame so its not a lot of work, but having a few more mods would help reports get addressed a little sooner.

Whats it like to be a mod? Reports just show up as messages in your Lemmy inbox, and if a different mod has already addressed the report, the message goes away and you never worry about it.

founded 2 years ago
MODERATORS
 

I have a folder of MP3s, some of which date back to 1999, just a few years after the format was popularised. Most of them have utterly terrible names (think RIDEONAM.MP3). I think at this point they might even survive the heat death of the universe. And they'll still be terribly-organised.

you are viewing a single comment's thread
view the rest of the comments
[–] wetbeardhairs@lemmy.dbzer0.com 28 points 3 days ago (1 children)

No I'm sure there will be an obscure shell script that someone wrote to do all of the install for you that will suddenly fail on a broken python dependency (because why not) and then leave your system in semi-altered state that doesnt really work wrong but its never quite right again

[–] r_13@lemmy.world 19 points 3 days ago (1 children)

I 100% learnt to use docker specifically to avoid the exact situation you described.

[–] Hawke@lemmy.world 7 points 3 days ago (3 children)

Got any good resources for learning?

In my (limited) experience Docker is just “run some script from a random GitHub that loads more stuff from a random GitHub… now you have a blob of code on your PC somewhere that’s unmodifiable and inaccessible unless it’s a web app in which case it’s listening on a random port with no access to any system resources”

I assume there’s something more I need to be doing but all the learning resources just kinda assume you understood wtf it’s doing.

[–] notoftenthat@sh.itjust.works 11 points 3 days ago

Switch "some script" to "docker compose" and you are a subject matter expert.

[–] Sir_Kevin@lemmy.dbzer0.com 8 points 3 days ago (1 children)

all the learning resources just kinda assume you understood wtf it’s doing.

Welcome to the linux community.

[–] Hawke@lemmy.world 3 points 3 days ago

I mean I’d rather get told to “rtfm” than hear “it just works” with no explanation

[–] r_13@lemmy.world 2 points 3 days ago (1 children)

I tend to think of docker containers like light virtual machines.

You can start with an image of a very simple bare operating system, or from an OS with a few things installed (in my case I have lately been using images from dockerhub under nvidia/cuda-ubuntu so that my container spins up with ubuntu and the drivers and SDK for my GPU).

Then essentially the Dockerfile becomes the sandbox from which to test installation scripts, see what works by trial and error if necessary, to install the programs you want -- if you make a mistake or the install script fails as in the comment above, you can just kill the container and spin up a new one without the "doesn't really work wrong but its never quite right again" issue :)

I know this does sound like 'rtfm' but I definitely have made a lot of use of the Docker manuals: https://docs.docker.com/manuals/

These manuals, plus stack overflow searching for Dockerfile tips, and github repos for the software I want to use that sometimes do contain Dockerfiles, have been enough to get me acquainted with spinning up my own containers and installing what I need, and use docker compose to run multiple containers on a single host that can talk to each other. Beyond that, I had to search a bit harder (mostly on StackOverflow, but also a bit of tail-chasing using ChatGPT) to learn how to configure overlay networks to allow containers to talk to one another from on different servers, and using docker stack to spin up a swarm of containers as services on a cluster.

[–] Hawke@lemmy.world 1 points 3 days ago (1 children)

Yeah… that all makes sense and those docks seem decent. The piece of the puzzle that’s missing for me is: how does docker turn a yaml config that says like … (from their example):

> frontend:
>     image: example/webapp
>     ports:
>       - "443:8043"
>     networks:
>       - front-tier
>       - back-tier
>     configs:
>       - httpd-config
>     secrets:
>       - server-certificate

… into actual operating, functioning container blobs? e.g. How does it know that “secrets: server-certificate means that it should take an ssl cert and place it in the container? How does it know where to place that certificate?

[–] r_13@lemmy.world 1 points 2 days ago

I haven't used secrets but I would go through the docker compose secrets docs

https://docs.docker.com/compose/how-tos/use-secrets/

At a glance it seems to be informative, but I'm not sure if it explains in depth how it is doing things under the hood.