Website: https://roffey.au
At work we use separate clusters for various things. We built an Ansible collection to manage the lot so it’s not too much overhead.
For home use I skipped K8s and went to rootless Quadlet manifests. Each quadlet is in a separate non-root user with lingering enabled to reduce exposure from a container breakout.
The company behind GitLab is seeking buyout offers, so make of that what you will.
My employer uses GitLab CE and it’s pretty good, and it is FOSS. The EE version is “open core” so not really FOSS.
If I were starting from scratch I’d be looking into Gitea/Forgejo as well.
Bash scripts will only get you so far and I can wholly recommend Ansible for automation.
Basically the main advantage of Ansible is that its builtin tasks are “idempotent” which means you can re-run them and end up with the same result. Of course it is possible to do the same with bash scripts, but you may require more checks in place.
The other advantage of Ansible is that there are hundreds of modules for configuring a lot of different things on your system(s) and most are clear and easy to understand.
You could use HAProxy on the client side to load balance apps in multiple locations, but it really depends on the application.
I like to manage my software with Ansible but Docker stack files might make it simple enough for you.
Yeah, too frequent and too buggy. It got annoying having to do upgrades every six months and have to deal with all the new bugs that came with it.
Basically give me Debian-style biannual releases or Arch-style rolling releases.
I use Debian at home on my homeserver and a mix of Debian and Arch for my workstations. Most of my stuff is managed with Ansible to make rebuilding easier and most workloads in podman containers.
Personally I don’t overthink the distro thing. I recently started using Arch and quite like it. I’ve noticed packages that are available in Debian but not Arch and vice-versa. Debian Stable is nice because it’s just, well, stable.
Fedora has an annoying release cadence IMO. I have experienced desktop bugs in the early GA releases before which put me off. If I wanted instability I would sooner go with Arch (and I am yet to have many issues with Arch yet).
If I were to go with a BSD for a home server it would probably be OpenBSD or FreeBSD. OpenBSD has vmm and a bunch of tooling around it, and FreeBSD has bhyve and jails. I haven’t taken the plunge because Linux works and it’s what I know.
These days I hear about people using proxmox on their homeserver with LXC containers and/or VMs.
Yeah it is a bit of a pain. I currently only have a few users. Tooling-wise there are ways to tail the journals (if you’re using journalctl) and collate them but I haven’t gotten around to doing this myself yet.