Sorry, maybe a weird question. But I am gonna acquire a nice server soon and am interested on how to manage that. I want to run stuff like a webserver, matrix server and just a lot of cool stuff. But how do I approach that on a software level? Any tips would be nice. Thanks
Professionally I am an “Architect” and not much involved in system config (anymore), what I describe below is how I do things for my own, private, servers: Not a big fan of docker, it too often means “cobbled together by a dev not understanding security implications” aka “Institutionalized ‘works on my machine’” (of course there are exceptions!). Generally I like using Ansible, because it feels close to how I learned things (ssh, manually), while still making things reproducible (Infrastructure as Code). But, again, not too big a fan of using other peoples “roles”, because you never know how well they actually understand what they’re doing. I read them for a rough understanding, but usually opt to write my own, based on careful reading of a given software’s config manual.
I run vanilla Kubernetes on 4 worker nodes and 3 control planes for high availability.
Unless you’re some freak who enjoys K8S so much you don’t want to ever get away from it, I don’t recommend it
I use unRAID + the docker compose plugin. The main advantage is that hardware updates are super easy:
-
Turn off
-
Replace motherboard and CPU with a completely different one
-
Turn on
(4. If hardware is passed through to a VM, reconfigure the XML)
Done, it just works, so I can just scavenge free hardware from work. Only this year I did AMD>Intel>AMD with very different CPUs and it didn’t bat an eye
-
Docker-compose and a terminal is how I do it. Its simple and effective. I’m able to manage ~20 services that way.
I run a Kubernetes cluster across 3 different servers (nodes) + one small control plane server.
Proxmox PVE gang. Excellent platform to self-host anything you could want to run from Windows/Linux VMs, LXC containers, Docker, or mix and match. The web GUI makes management easy and gives you a nice dashboard too.