https://github.com/chrismuellner/home-ops
home lab managed by flux
https://github.com/chrismuellner/home-ops
flux gitops
Last synced: 8 months ago
JSON representation
home lab managed by flux
- Host: GitHub
- URL: https://github.com/chrismuellner/home-ops
- Owner: chrismuellner
- License: mit
- Created: 2022-05-22T15:37:25.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-10-23T00:48:44.000Z (8 months ago)
- Last Synced: 2025-10-23T02:39:15.275Z (8 months ago)
- Topics: flux, gitops
- Homepage:
- Size: 1.44 MB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# home ops
Single-node k3s cluster.
Thanks to k8s@home maintainers:
- https://github.com/onedr0p/flux-cluster-template
- https://github.com/bjw-s/home-ops
## Prerequisites
- Storage
- `tv` (Sonarr) folder in `media` pvc
- `movie` (Radarr) folder in `media` pvc
## Bootstrap
1. Install Flux
```sh
kubectl apply --kustomize ./bootstrap
```
2. Configure RKE2 via [configuration file](https://docs.rke2.io/install/configuration#configuration-file)
```yaml
cni: cilium
disable: rke2-ingress-nginx
```
3. Create secret with age private key ([sealed secrets](https://fluxcd.io/flux/guides/mozilla-sops/#encrypting-secrets-using-age))
```sh
cat age.agekey |
kubectl create secret generic sops-age \
--namespace=flux-system \
--from-file=age.agekey=/dev/stdin
```
4. Start Flux reconciliation
```sh
kubectl apply --kustomize ./clusters/lnz/config
```