Comment on Selfhosting Sunday - slrpnk edition
solariplex@slrpnk.net 2 days ago
Working on a split staging/prod hybrid-cloud k3s setup using nixos, tailscale, systemd-nspawn and fluxcd. If someone has advice for running k3s in unprivileged (mounts idmapped) nspawn containers, I’m all👂.
This will run
- (openwisp)[openwisp.org] to make it feasible to provide lots of less tech-savvy people in the local community with secure, simple, privacy-respecting wifi using free software and recycled routers.
- Various libre software I’m helping community, unions and political orgs adopt. Notably Discourse and Peertube.
_core@sh.itjust.works 2 days ago
Sounds interesting. I just got a VPS, installed Easy Panel on it and am going to use it to setup portainer (used for container management) . I also just ran across k3s yesterday and am thinking I’d try an install of that as well to see how that works/what that’s about
solariplex@slrpnk.net 2 days ago
Cool, I haven’t tried either of those.
I’m the type of person who likes to upgrade my systems via the terminal because I like to know the detailed processes, but I’ve also burned myself numerous times; hence my preference for declarative and immutable/atomic solutions.
It’s (quite) a bit more of a hassle, but I’ve lost trust in GUIs.
k3s is fairly simple (as far as k8s distros go). Helm is good to start with but for the long run I recommend using kubernetes manifests directly (i.e.
kubectl apply -f pvc.yaml
, deployment.yaml, etc) rather than helm, because there are quite a few gotchas with helm which can cause trouble. Besides that, it’s good practice to use the–secrets-encryption
flag on the server node(s), and if you’re deploying agent nodes it’s good to use bootstrap tokens (k3s token create
)_core@sh.itjust.works 1 day ago
I like to use the terminal as much as I can as well, but for first time use/checking it out something a gui is nice to be able to jump in as quickly as possible.
I learned a lot this morning about adding users via command line, ssh keys, default directories, and default shells. Stuff a gui wouldn’t teach me ☺️