Skip to content

Just another self-hosted media server

License

Notifications You must be signed in to change notification settings

blinky-z/homeserver

Repository files navigation

Home Media Server

Description

This repo will get you your own home server with a lot of useful self-hosted software. This stack is well-built and will serve you reliably.

All of the services are optional (except core ones, Authentik and cert-manager) and can be enabled/disabled anytime. Detailed list:

  • Media:
    • Radarr - Movies management
    • Sonarr - TV Series management
    • Lidarr - Music management
    • Whisparr - Adult videos management
    • Prowlarr - Indexers management. Allows you to sync your torrent/usenet indexers across all of the *arr stack
    • Bazarr - Companion application to Radarr and Sonarr. It manages and downloads subtitles based on your requirements
    • Plex - Media server for watching downloaded movies and series from any of your devices (PC, Android, iOS, iPad, TV)
    • Jellyfin - Open-source alternative to Plex
    • Jellyseerr - Media request platform, which you can share with your friends for automatic movie/series downloading. Companion application to Radarr/Sonarr and Plex/Jellyfin
    • Autobrr - Download automation for torrents and Usenet. Monitors indexers' IRC channels and grabs a release as soon as it's announced
  • Downloaders:
  • Books:
  • Utilities:
    • Miniflux - RSS feed reader
    • Stirling PDF - PDF Manipulation Tool
    • The Lounge - IRC Client
    • Convertx - File conversion
    • Mealie - Cooking recipe manager
    • Librechat - Self-hosted ChatGPT clone, supporting multiple local & remote AI providers (Ollama, OpenRouter, OpenAI, Groq, and others)
  • Notification:
    • Apprise - Send notifications to many popular services like Telegram, Discord, Slack, Gotify, and others
    • Gotify - Self-hosted push notification service
  • Monitoring:
    • MySpeed - Speed test tracker. Monitors your download & upload speed over time
  • Authentication:
    • Authentik - SSO (Single-Sign On) Authentication. Protects your homeserver from unathenticated access. Allows you to sign in only once and use any of the services without the hassle of remembering a credentials for each service
  • Security:
    • cert-manager - Automatically provision, manage, and renew TLS certificates

Features

Chart features:

  • Great chart customization - important service settings are controlled through Helm values
  • SSO authentication powered by Authentik
  • Automatic TLS certificates provisioning powered by cert-manager
  • Scheduled server backups powered by Backrest and backed by restic
  • VPN support - every service can route its traffic through a WireGuard VPN. This is especially actual for such services as qBitTorrent for smooth Linux ISO downloading
  • Proper file permissions handling - you will never encounter permission issues
  • Follows best security practices - containers are running as a non-root user and with a read-only filesystem

Quickstart / Documentation

Please see Installation.


TODO

  1. Move sensitive values to Kubernetes secrets
  2. Add hardware decoding support to Plex & Jellyfin

Credits

I want to thank these amazing resources which I heavily used during the development:

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Disclaimer

This code is provided for informational purposes only and should not be used for illegal activities. I am not responsible for any actions performed by the users of this code.