Project Overview
I have set up a single-node Kubernetes cluster using k3s on a Raspberry Pi 5, running headless Ubuntu. This cluster features a cluster-wide certificate manager and utilizes Traefik as a reverse proxy. To ensure the integrity and privacy of the cluster, I have also implemented several undisclosed security and backup measures.
Hosted Services
The cluster currently hosts the following services:
- Traefik Reverse Proxy: Manages and routes incoming traffic.
- Developer Portfolio: Personal website showcasing my projects and skills.
- Navidrome Music Server: Stream and manage music collection.
- Jellyfin Media Server: Stream and organize media content.
- Immich Photo Platform: Store and manage photos.
- Seafile Server: File synchronization and sharing platform.
- Longhorn: Manages persistent storage volumes.
- Minio S3 Storage: High-performance object storage.
- Cloud Observability Services: Jaeger and Opentelemetry-Collector for monitoring and tracing.
- Container Registry: Stores and manages Docker images.
- Cert-Manager: Automates management and issuance of TLS certificates.
- Open-Webui: Open-source service for hosting ChatGPT-like LLMs.
Motivation
This project empowers me and my family to take control of our data and privacy, reducing our reliance on major cloud providers. It also serves as a hands-on learning experience, deepening my understanding of Kubernetes and its ecosystem. Plus, it's a lot of fun! 😉