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
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
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.
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.