media-stack/README.md

61 lines
4.3 KiB
Markdown
Raw Normal View History

2022-02-19 23:17:15 +01:00
# Docker Compose NAS
After searching for the perfect NAS solution, I realized what I wanted could be achieved
with some Docker containers on a vanilla Linux box. The result is an opinionated Docker Compose configuration capable of
browsing indexers to retrieve media resources and downloading them through a Wireguard VPN with port forwarding.
SSL certificates and remote access through Tailscale are supported.
2022-02-19 23:17:15 +01:00
## Applications
The following applications are available:
- [Sonarr](https://sonarr.tv/): PVR for newsgroup and bittorrent users
- [Radarr](https://radarr.video/): Movie collection manager for Usenet and BitTorrent users
- [Prowlarr](https://github.com/Prowlarr/Prowlarr): Indexer aggregator for Sonarr and Radarr
- [qBittorrent](https://www.qbittorrent.org/): Bittorrent client with a complete web UI
- [PIA Wireguard VPN](https://github.com/thrnz/docker-wireguard-pia): Encapsulate qBittorrent traffic in
2022-12-30 23:09:35 +01:00
[PIA](https://www.privateinternetaccess.com/) using [Wireguard](https://www.wireguard.com/) with port forwarding.
2023-02-13 06:42:29 +01:00
- [Jellyfin](https://jellyfin.org/): Media server designed to organize, manage, and share digital media files to networked devices
2022-02-19 23:17:15 +01:00
- [Heimdall](https://heimdall.site/): Application dashboard
2022-04-18 00:59:35 +02:00
- [Traefik](https://traefik.io/): Reverse proxy
2022-08-24 04:16:33 +02:00
- [Watchtower](https://containrrr.dev/watchtower/): Automated Docker images update
2022-02-19 23:17:15 +01:00
## Installation
See [installation instructions](./INSTALL.md).
2022-04-18 00:59:35 +02:00
TLDR: `cp .env.example .env`, edit to your needs then `sudo docker compose up -d`, then for the first time `./update-config.sh`.
2022-02-19 23:17:15 +01:00
## Configuration
See [configuration](./CONFIGURATION.md).
## Containers
2022-12-30 23:08:06 +01:00
| **Application** | **Image** | **URL** | **Notes** |
|-------------------|------------------------------------------------------------------------------------------------|--------------|-------------------------------------------|
| Sonarr | [linuxserver/sonarr](https://hub.docker.com/r/linuxserver/sonarr) | /sonarr | |
| Radarr | [linuxserver/radarr](https://hub.docker.com/r/linuxserver/radarr) | /radarr | |
| Prowlarr | [linuxserver/prowlarr:develop](https://hub.docker.com/r/linuxserver/prowlarr) | /prowlarr | `develop` tag as it is not stable yet |
| PIA Wireguard VPN | [thrnz/docker-wireguard-pia](https://hub.docker.com/r/thrnz/docker-wireguard-pia) | | |
| qBittorrent | [linuxserver/qbittorrent:4.5.0-libtorrentv1](https://hub.docker.com/r/linuxserver/qbittorrent) | /qbittorrent | Uses VPN network<br>Using Libtorrent 1.x |
2023-02-13 06:42:29 +01:00
| Jellyfin | [linuxserver/jellyfin](https://hub.docker.com/r/linuxserver/jellyfin) | /jellyfin | |
2022-12-30 23:08:06 +01:00
| Heimdall | [linuxserver/heimdall](https://hub.docker.com/r/linuxserver/heimdall) | / | |
| Traefik | [traefik](https://hub.docker.com/_/traefik) | | |
| Watchtower | [watchtower](https://hub.docker.com/r/containrrr/watchtower) | | |
2022-02-19 23:17:15 +01:00
## Improvement
2022-04-18 00:59:35 +02:00
There is always room for improvement. I did not need those containers, so I did not include them, but maybe you could
2022-02-19 23:17:15 +01:00
benefit from:
- [Bazarr](https://www.bazarr.media/): companion application to Sonarr and Radarr that manages and downloads subtitles
- [Lidarr](https://lidarr.audio/): music collection manager for Usenet and BitTorrent users
- [FlareSolverr](https://github.com/FlareSolverr/FlareSolverr): Proxy server to bypass Cloudflare protection, useful
for some indexers in Prowlarr
- [Jackett](https://github.com/Jackett/Jackett): API Support for your favorite torrent trackers, as a Prowlarr replacement
2022-04-18 00:59:35 +02:00
- [Pi-hole](https://pi-hole.net/): DNS that blocks ads
- Expose services with CloudFlare Tunnel if Tailscale is not enough
2022-02-19 23:17:15 +01:00
- you tell me!