

Maybe I can start shedding some light off docker.
When you start setting up a server, you end up having to setup many things. You install various programs and their dependencies. Sometimes those dependencies can conflict with each other, or you mess up your system by manually pasting some command you found on stack exchange. Then you need to manually keep all the software you use up-to-date and pray they don’t brick your server and force you to start over. And then when you need to update your OS or move to a new machine, you need to repeat this whole dance again.
Docker is like legos. You want to install jellyfin? There’s already a docker imagine for that. You just spin it up with some little configure file and you’re done. You want to setup a firewall? You want to setup https access? Automatic updates? There are docker images already made for it.
So you keep on setting up those docker containers and they all run in isolation but can communicate with each other. If you break something, you just restart one or all the containers and you always start fresh. Docker keeps nothing in memory, unless you explicitly want it (e.g. Your jellyfin config will presist in external config files).
Want to move to a new machine? You can just copy over the scripts that run the docker containers and those config files. Software updates? Just update the docker container and it handles all dependencies.
Also, Jellyfin all the way. It’s open source and free all the way.






Haha OK. DIY server is like legos, docker is playmobil.