So I have rebuilt my Production rack with very little in terms of an actual software plan.
I host mostly docker contained services (Forgejo, Ghost Blog, OpenWebUI, Outline) and I was previously hosting each one in their own Ubuntu Server VM on Proxmox thus defeating the purpose.
So I was going to run a VM on each of these Thinkcentres that worked as a Kubernetes Cluster and then ran everything on that. But that also feels silly since these PCs are already Clustered through Proxmox 9.
I was thinking about using LXC but part of the point of the Kubernetes cluster was to learn a new skill that might be useful in my career and I don’t know how this will work with Cloudflared Tunnels which is my preferred means of exposing services to the internet.
I’m willing to take a class or follow a whole bunch of “how-to” videos, but I’m a little frazzled on my options. Any suggestions are welcome.
I always point people here: https://youtu.be/uPYjJYQEFSg
Hard to give you hints when we don’t know what your background is, so here is some basics:
For starting selfhosting I’d recommend getting comfortable with the linux command line at first (this may help: https://www.linuxcommand.org/). Set up a VM in Virt-manager / VirtualBox / VMWare / whatever hypervisor you want, install a Linux image (I’d recommend plain Debian without desktop environment). Now you have a sandbox where you can toy around. If you’re on windows you can use WSL2. If you’re already on a linux desktop, toy around there.
If you already got some hardware like a raspberry pi or old Laptop, get that up and running with a distro of your choice, plug it into your network and SSH into it, then you have got your playground there. Get the basic commands in like ls, pwd, cat, tail, touch, mkdir, rm, … And some things you can do with them. Check out their respective man-pages.
After that, install some packages, change configs (I’d recommend nano over vim for starters). From now on, there are no boundaries of what to do. Set up your first basic webserver with apache / nginx / caddy, install docker / podman and containerize / get some images, set up pihole, nextcloud, jellyfin, do whatever you like… Congratulations, you are now “self hosting”.
Maybe some day switch that Raspberry pi out for a thin client as seen in the picture from OP and install a hypervisor like Proxmox on it. If you got all that, which may take a while, you can consider networking and firewalls IMHO (you could get a cheap router that supports OpenWRT to learn about these things). Don’t open ports to the internet as long as you’re not 100% sure what you are doing. You can set up a VPN with DynDNS on most modems / routers connected to your ISP though, opening up your self hosted services only to you / anyone with access. Or use something like Tailscale / Twingate.
I could go on, but like I said, self hosting and home labbing is kind of use case / requirement specific.