Collection of all of my kubernetes resources created for my k3s cluster, hosted on a 2 nodes in my home office.
Name | CPU | Memory | GPU |
---|---|---|---|
Sheol | i7-6700k | 32 GiB DDR4 @ 3000 MHz | RTX-3080 |
Abaddon | i5-6600T | 16 GiB DDR4 @ 2400 MHz | Integrated |
Will need to create a GitHub Personal Access Token
flux bootstrap github \
--components-extra=image-reflector-controller,image-automation-controller \
--owner=BriianPowell \
--repository=k3s-collective \
--branch=main \
--path=clusters/k3s \
--read-write-key \
--personal=true \
--private=false \
--reconcile # use if repository already exists
- Atuin
- Traefik + Traefik Forward Auth
- Cert Manager
- Metrics Server
- Reflector
- Reloader
- Keycloak
- HomeAssistant
- Nextcloud + Nextcloud Exporter
- Ntfy
- Wiki.js
- Pi-hole
- Cloudnative-PG
- Error Pages
In Installation Order
- nvidia-device-plugin
- Plex + plex-media-server-exporter
- Deluge + deluge_exporter
- Radarr + Exportarr
- Sonarr + Exportarr
- Lidarr + Exportarr
- Bazarr + Exportarr
- Prowlarr + Exportarr
- Recyclarr
- Overseerr + overseer-exporter
- Tautulli + tautulli-exporter
- Register Helm Repo
flux create source helm sealed-secrets \
--interval=1h \
--url=https://bitnami-labs.github.io/sealed-secrets
- Create HelmRelease to install Sealed-Secrets Controller
flux create helmrelease sealed-secrets \
--interval=1h \
--release-name=sealed-secrets-controller \
--target-namespace=flux-system \
--source=HelmRepository/sealed-secrets \
--chart=sealed-secrets \
--chart-version=">=2.8.0 <3.0.0" \
--crds=CreateReplace
- Retrieve the public key:
kubeseal --fetch-cert \
--controller-name=sealed-secrets-controller \
--controller-namespace=flux-system \
> pub-sealed-secrets.pem
- Create a secret
kubectl -n default create secret generic basic-auth \
--from-literal=user=admin \
--from-literal=password=change-me \
--dry-run=client \
-o yaml > basic-auth.yaml
- Seal the Secret
kubeseal --format=yaml --cert=pub-sealed-secrets.pem \
< basic-auth.yaml > basic-auth-sealed.yaml
- Apply the Sealed Secret
kubectl apply -f basic-auth-sealed.yaml
All references I've used to create this project are listed as comments within each of their respective projects. In many cases I had to utilize several sources to create a working deployment file for my needs. If anyone has any questons or would like to reach out about the way I've done things, I'd be more than happy to talk about this project 😁