Automated media management stack running on Docker. Handles requesting, downloading, organizing, and subtitling media — with Jellyfin running on a separate server for playback.
graph LR
Seerr -->|TV| Sonarr
Seerr -->|Movies| Radarr
Sonarr & Radarr --> SABnzbd -->|Organize| Storage[("Storage")]
Bazarr -.->|Subtitles| Storage
Storage --> Jellyfin
| Service | Port | Purpose | Guide |
|---|---|---|---|
| Seerr | 5055 | Media request portal | Wiki |
| Sonarr | 8989 | TV show management | Wiki |
| Radarr | 7878 | Movie management | Wiki |
| SABnzbd | 8080 | Usenet downloader | Wiki |
| Bazarr | 6767 | Automatic subtitles | Wiki |
| Prowlarr | 9696 | Indexer management | Wiki |
| Recyclarr | — | TRaSH quality profile sync | Wiki |
| Tailscale | — | VPN for remote access | Wiki |
| Service | Port | Purpose | Guide |
|---|---|---|---|
| Homepage | 3000 | Dashboard with service widgets | Wiki |
| Maintainerr | 6246 | Automated library maintenance | Wiki |
| LazyLibrarian | 5299 | Book/audiobook management | Wiki |
| Audiobookshelf | 13378 | Audiobook server + mobile apps | Wiki |
git clone https://github.com/bcanfield/docker-media-server.git
cd docker-media-server
cp .env.example .env # edit with your paths, timezone, and Tailscale key
docker compose up -dThen configure each service through its web UI — see the wiki for per-service setup guides.
cd extras
cp .env.example .env
cp -r homepage/ ${CONFIG_ROOT}/config/homepage/
docker compose --env-file ../.env --env-file .env up -d- Tailscale / Remote Access
- Backups
- Usenet Indexers
- TRaSH Guides — quality profile recommendations
- Servarr Wiki — Sonarr, Radarr, Prowlarr docs
- LinuxServer.io — Docker image maintainers