- Notifications
You must be signed in to change notification settings - Fork25
fabito/htk8s
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is my currentHTPC setup. It runs onk3s - a lightweight and easy to install Kubernetes distribution.It includes the following applications:
- Sonarr for tv shows
- Radarr for movies
- Bazarr for subtitles
- Transmission for torrents
Jackett for torrent tracker searching- Prowlarr for index management
- Readarr for ebooks
Emby- Jellyfin
Applications state (settings / db) and media files are stored in a shared volume of typehostPath
. It does not use PVC and currently only works if the wholehtpc
namespace is deployed in the same node.
# for x86_64kubectl apply -f https://raw.githubusercontent.com/fabito/htk8s/v0.1/install_x86_64.yaml# for raspberry pi (ARM)kubectl apply -f https://raw.githubusercontent.com/fabito/htk8s/v0.1/install_armhf.yaml
# x86_64 onlykubectl apply -f https://raw.githubusercontent.com/fabito/htk8s/v0.1/install_argocd.yaml
This alternate manifest will installArgo CD along with thehtpc application. Then it will monitor this repo for changes and apply them to the cluster accordingly (more specifically theoverlays/x86
overlay).
You can access the ArgoCD UI at:https://localhost/argocd.
All resources are created in thehtpc
namespace. So if you run:
k3s kubectl get all -n htpc
You should get something similar to:
NAME READY STATUS RESTARTS AGEpod/bazarr-795f88c5c9-w75l7 1/1 Running 0 24hpod/emby-6f457df664-fqbmc 1/1 Running 0 24hpod/jackett-6bcf6cd8d6-lrh6j 1/1 Running 0 24hpod/radarr-5c965c7678-zt8sq 1/1 Running 0 24hpod/sonarr-b65c8956-mxng4 1/1 Running 0 24hpod/transmission-5f7fdc6cb5-nrtbb 1/1 Running 0 24hNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEservice/bazarr ClusterIP 10.43.43.224<none> 6767/TCP 24hservice/emby ClusterIP 10.43.212.198<none> 8096/TCP 24hservice/jackett ClusterIP 10.43.104.233<none> 9117/TCP 24hservice/radarr ClusterIP 10.43.141.101<none> 7878/TCP 24hservice/sonarr ClusterIP 10.43.35.98<none> 8989/TCP 24hservice/transmission ClusterIP 10.43.184.198<none> 9091/TCP 24hNAME READY UP-TO-DATE AVAILABLE AGEdeployment.apps/bazarr 1/1 1 1 24hdeployment.apps/emby 1/1 1 1 24hdeployment.apps/jackett 1/1 1 1 24hdeployment.apps/radarr 1/1 1 1 24hdeployment.apps/sonarr 1/1 1 1 24hdeployment.apps/transmission 1/1 1 1 24hNAME DESIRED CURRENT READY AGEreplicaset.apps/bazarr-795f88c5c9 1 1 1 24hreplicaset.apps/emby-6f457df664 1 1 1 24hreplicaset.apps/jackett-6bcf6cd8d6 1 1 1 24hreplicaset.apps/radarr-5c965c7678 1 1 1 24hreplicaset.apps/sonarr-b65c8956 1 1 1 24hreplicaset.apps/transmission-5f7fdc6cb5 1 1 1 24h
You should also be able to reach each component's UI using the links below. Don't forget to replacelocalhost
with the IP or the server name running k3s.
App | URI |
---|---|
radarr | http://localhost/radarr |
sonarr | http://localhost/sonarr |
bazarr | http://localhost/bazarr |
jacket | http://localhost/jackett |
prowlarr | http://localhost/prowlarr |
readarr | http://localhost/readarr |
transmission | http://localhost/transmission |
jellyfin | http://localhost/ |
Check theingress-route.yaml for more details.
Each module except for Jellyfin is configured to respond on a custom basepath (check the init containers logic for more details).
It usesLinuxServers images.
It uses ahostPath
volume to store configuration and media files. It defaults to the/opt/htpc
directory
/opt/htpc├── bazarr├── downloads├── jellyfin├── prowlarr├── readarr├── media│ ├── movies│ ├── books│ └── tv├── radarr├── sonarr└── transmission
About
HTPC services running on Kubernetes
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors5
Uh oh!
There was an error while loading.Please reload this page.