Commit 6bf2d5
2026-04-21 12:55:59 Anonymous: base| /dev/null .. streaming service/data flow architecture.md | |
| @@ 0,0 1,78 @@ | |
| + | # Data Flow Architecture |
| + | |
| + | ## Overview |
| + | |
| + | The media stack operates as a fully automated pipeline: |
| + | |
| + | Request → Index → Download → Import → Library |
| + | |
| + | Each stage is handled by a dedicated service to ensure separation of concerns and predictable media handling. |
| + | |
| + | --- |
| + | |
| + | ## Flow Steps |
| + | #### 1. Request (optional) |
| + | |
| + | Via Jellyseerr → sends to Radarr/Sonarr |
| + | |
| + | #### 2. Indexing |
| + | |
| + | Prowlarr syncs indexers: |
| + | |
| + | ``` |
| + | docker exec -it prowlarr curl http://localhost:9696 |
| + | ``` |
| + | Prowlarr synchronizes indexers to Radarr and Sonarr automatically. |
| + | |
| + | #### 3. Download |
| + | Downloads are handled by: |
| + | |
| + | - qBittorrent |
| + | |
| + | Radarr/Sonarr send torrents via API using category-based routing: |
| + | |
| + | - movies |
| + | - series |
| + | |
| + | Check active downloads: |
| + | |
| + | ``` |
| + | docker exec -it qbittorrent qbittorrent-nox |
| + | ``` |
| + | |
| + | (or via Web UI: http://localhost:8080) |
| + | |
| + | #### 4. Import validation |
| + | |
| + | Radarr and Sonarr monitor completed downloads and import them into the correct library structure. |
| + | |
| + | Radarr/Sonarr scanning: |
| + | ``` |
| + | docker exec -it radarr ls /data/downloads/movies |
| + | ``` |
| + | #### 5. Final library check |
| + | After import, media is stored in the final library locations: |
| + | ``` |
| + | ls -la /mnt/BonusDisk/JellyfinMedia/Streaming/movies |
| + | ls -la /mnt/BonusDisk/JellyfinMedia/Streaming/series |
| + | ``` |
| + | These folders are consumed by the media server (e.g. Jellyfin). |
| + | ## Debug commands |
| + | Check container networking |
| + | ``` |
| + | docker network ls |
| + | ``` |
| + | Test internal service resolution |
| + | ``` |
| + | docker exec -it radarr ping sonarr |
| + | ``` |
| + | |
| + | ## Summary |
| + | |
| + | This architecture ensures: |
| + | |
| + | - Fully automated media acquisition |
| + | - Clear separation between download and library layers |
| + | - Centralized indexer management via Prowlarr |
| + | - Deterministic routing through Radarr and Sonarr |
| + | - Stable storage structure for long-term media hosting |
