An open API service indexing awesome lists of open source software.

https://github.com/rafaribe/home-ops

Wife approved HomeOps driven by Kubernetes, and Gitops via Flux.
https://github.com/rafaribe/home-ops

flux fluxcd gitops helm iac infrastructure infrastructure-as-code ingress-nginx k8s-at-home kubernetes rook-ceph talos talos-linux terraform

Last synced: 12 days ago
JSON representation

Wife approved HomeOps driven by Kubernetes, and Gitops via Flux.

Awesome Lists containing this project

README

        

### My home operations repository :octocat:

_... managed with Flux, Renovate and GitHub Actions_ :robot:

[![Docs](https://img.shields.io/static/v1.svg?color=009688&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Homelab&message=Docs&logo=readthedocs)](https://rafaribe.github.io/home-ops/ "Documentation for this repository.")
[![GitHub stars](https://img.shields.io/github/stars/rafaribe/home-ops?color=green&style=for-the-badge)](https://github.com/rafaribe/home-ops/stargazers "This repo star count")
[![GitHub last commit](https://img.shields.io/github/last-commit/rafaribe/home-ops?color=purple&style=for-the-badge)](https://github.com/rafaribe/home-ops/commits/main "Commit History")

[![Discord](https://img.shields.io/discord/673534664354430999?style=for-the-badge&label&logo=discord&logoColor=white&color=blue)](https://discord.gg/home-operations)  
[![Talos](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Ftalos_version&style=for-the-badge&logo=talos&logoColor=white&color=blue&label=%20)](https://talos.dev)  
[![Kubernetes](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fkubernetes_version&style=for-the-badge&logo=kubernetes&logoColor=white&color=blue&label=%20)](https://kubernetes.io)  
[![Renovate](https://img.shields.io/github/actions/workflow/status/onedr0p/home-ops/renovate.yaml?branch=main&label=&logo=renovatebot&style=for-the-badge&color=blue)](https://github.com/rafaribe/home-ops/actions/workflows/renovate.yaml)

[![Age-Days](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_age_days&style=flat-square&label=Age)](https://github.com/kashalls/kromgo)  
[![Uptime-Days](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_uptime_days&style=flat-square&label=Uptime)](https://github.com/kashalls/kromgo)  
[![Node-Count](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_node_count&style=flat-square&label=Nodes)](https://github.com/kashalls/kromgo)  
[![Pod-Count](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_pod_count&style=flat-square&label=Pods)](https://github.com/kashalls/kromgo)  
[![CPU-Usage](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_cpu_usage&style=flat-square&label=CPU)](https://github.com/kashalls/kromgo)  
[![Memory-Usage](https://img.shields.io/endpoint?url=https%3A%2F%2Fkromgo.rafaribe.com%2Fcluster_memory_usage&style=flat-square&label=Memory)](https://github.com/kashalls/kromgo)  

---

## :book:  Overview

This is the repository that hosts the code that I use to manage my home infrastructure.

I use **Talos Linux** as my base OS and Kubernetes distribution. The boostrap process consists of applying machine configs generated by [talhelper](https://github.com/budimanjojo/talhelper). After this the initial applications necessary are bootstrapped by [Helmfile](https://github.com/helmfile/helmfile) and by my script [bootstrap-entire-cluster.sh](https://github.com/rafaribe/home-ops/blob/main/kubernetes/main/bootstrap/bootstrap-entire-cluster.sh)
After the kubernetes cluster is provisioned I use [Flux](https://fluxcd.io/) to watch this repository, and [Renovate](https://renovate.io/) to automatically update the dependencies.

## :wrench:  Tools

_Below are some of the tools I find useful_

| Tool | Purpose |
|-----------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [sops](https://github.com/mozilla/sops) | Simple and flexible tool for managing secrets |
| [pre-commit](https://github.com/pre-commit/pre-commit) | Ensure the YAML and shell script in my repo are consistent |
| [kubesearch](https://kubesearch.dev/) | Look for how other people manage their Self-hosted software on k8s-at-home community |
| [mkdocs material](https://squidfunk.github.io/mkdocs-material/) | Static website generator for all my docs in this repo |
| [Renovate](https://docs.renovatebot.com/) | Automatically finds new releases for the applications and issues corresponding PR's |

## :globe_with_meridians:  External Services

| Service | Purpose |
|-----------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [Cloudflare](https://www.cloudflare.com/) | DNS Provider and Tunnel Service |
| [Akeyless](https://www.akeyless.io/) | External Secret storage - Good alternative to hashicorp vault |
| [TrueNas Scale](https://www.truenas.com/truenas-scale/) | External to the cluster but local NAS. For bulk storage needs |

## :handshake:  Thanks

A lot of inspiration for my cluster came from the people that have shared their clusters over at [kubernetes at home community](https://github.com/k8s-at-home)

- [xUnholy/k8s-gitops](https://github.com/xUnholy/k8s-gitops)
- [billimek/k8s-gitops](https://github.com/billimek/k8s-gitops)
- [carpenike/k8s-gitops](https://github.com/carpenike/k8s-gitops)
- [rust84/k8s-gitops](https://github.com/rust84/k8s-gitops)
- [blackjid/homelab-gitops](https://github.com/blackjid/homelab-gitops)
- [bjw-s/k8s-gitops](https://github.com/bjw-s/k8s-gitops)
- [toboshii/k8s-gitops](https://github.com/toboshii/k8s-gitops)
- [onedr0p/home-ops](https://github.com/onedr0p/home-ops)
- [Truxnell/home-cluster](https://github.com/Truxnell/home-cluster)
- [haraldkoch/kochhaus-home](https://github.com/haraldkoch/kochhaus-home)
- [auricom/home-ops](https://github.com/auricom/home-ops)

And to the projects that I use every day to help make my cluster better:

- [Kubesearch](https://kubesearch.dev/)
- [Flux-Local](https://github.com/allenporter/flux-local)
- [Home Operations Discord](https://discord.gg/qBnQsM3y)
- [Talhelper](https://github.com/budimanjojo/talhelper)

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=rafaribe/home-ops&type=Date)](https://star-history.com/#rafaribe/home-ops&Date)

Test