Files
truenas/TRUENAS_APPS.md

817 lines
25 KiB
Markdown
Raw Normal View History

# TrueNAS Docker Apps and Containers
**Last Updated**: 2025-12-16
**Source**: `/home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/`
**Export Reference**: truenas-apps-export-20251216-143515
---
## Overview
This document catalogs all Docker containers and TrueNAS applications deployed on the TrueNAS Scale system at 192.168.2.150. The inventory includes 13 containers across 5 functional categories: Media Management, VPN/Networking, Media Streaming, Infrastructure Management, and Monitoring.
**Collection Details**:
- Export Date: 2025-12-16 14:35:15
- Format: JSON + YAML metadata
- Containers: 13 total (7 running healthy/active, 6 unhealthy/exited)
- Networks: 6 Docker networks (3 compose-managed, 2 bridge, 1 host)
- Volumes: Multiple named and anonymous volumes
---
## Quick Reference: Container Status Matrix
| Container | Status | Health | Uptime | Port | Function |
|-----------|--------|--------|--------|------|----------|
| ix-plex-plex-1 | Running | Healthy | 3 days | 32400 | Media Server |
| arr-stack-sonarr-1 | Running | - | 2 days | 8989 | TV Automation |
| arr-stack-radarr-1 | Running | - | 2 days | 7878 | Movie Automation |
| arr-stack-bazarr-1 | Running | - | 2 days | 6767 | Subtitle Automation |
| ix-dockge-dockge-1 | Running | Healthy | 3 days | 31014 | Docker Manager |
| gluetun | Running | Unhealthy | 2 days | 8112 | VPN Gateway |
| deluge | Running | - | 2 days | - | Torrent Client |
| prowlarr | Running | - | 2 days | - | Indexer Hub |
| flaresolverr | Running | - | 2 days | - | CF Bypass |
| beszel-agent | Running | - | 3 weeks | - | Monitor Agent |
| epic_dewdney | Running | Unhealthy | 2 days | - | NordVPN #1 |
| frosty_gates | Running | Unhealthy | 2 days | - | NordVPN #2 |
| ix-plex-permissions-1 | Exited (0) | - | 3 days ago | - | Init (Plex) |
---
## Detailed Container Documentation
### Media & Streaming Stack
#### Plex Media Server (ix-plex-plex-1)
```
Status: Running (Healthy) ✓
Uptime: 3 days
Image: plexinc/pms-docker:1.42.2.10156-f737b826c
Container ID: 3a2f37cf7910
Created: 2025-12-12 19:30:02
Size: 354MB
```
**Network Configuration**:
- Network: `ix-plex_default` (Compose bridge network)
- Exposed Ports:
- `32400/tcp``0.0.0.0:32400` (Primary web UI)
- `1900/udp` (SSDP discovery for UPnP)
- `8324/tcp` (Plex Companion protocol)
- `32412-32414/udp` (Server communication)
- `32469/tcp` (DLNA media server)
**Storage & Volumes**:
- Config: `/mnt/.ix-apps/app_configs/plex/`
- Media Library: `/mnt/Vauly/media/` (mounted from ZFS pool)
- Transcode Cache: Anonymous volumes for temporary encoding
**Health Check**: Enabled and passing
- Confirms proper Plex daemon operation
- Verifies network accessibility
- Validates media database integrity
**Application Metadata**:
- Catalog Train: `stable`
- App Version: 1.2.19
- Chart Version: 1.42.2.10156-f737b826c
- Maintainer: TrueNAS
- Last Updated: 2025-07-23
**Connected Services**: Communicates with Sonarr, Radarr, Bazarr via `ix-plex_default` network for direct library updates.
**Security Context**: Runs as root (uid 0, gid 0) with supplementary group `apps`. Has full access to media paths and Docker socket.
**Web UI Access**: `http://<truenas-ip>:32400/web`
---
### *Arr Stack: Media Automation Suite
The *arr stack provides integrated media discovery, acquisition, and management for Plex.
#### Sonarr (arr-stack-sonarr-1)
```
Status: Running ✓
Uptime: 2 days
Image: lscr.io/linuxserver/sonarr:latest
Container ID: 3ef4c33c4303
Created: 2025-12-13 08:23:53
Size: 205MB
```
**Network**: `ix-plex_default` (bridge) - communicates with Plex, Radarr, Bazarr
**Exposed Port**:
- `8989/tcp``0.0.0.0:8989` (Web UI)
**Storage Paths**:
- TV shows: `/mnt/Vauly/media/tv`
- Monitoring: Configuration in `ix-plex_default` network context
- Temp/Cache: Anonymous volumes
**Function**: Monitors RSS feeds and indexers for new TV episodes. Automatically triggers downloads via Gluetun/Deluge when releases match specified criteria.
---
#### Radarr (arr-stack-radarr-1)
```
Status: Running ✓
Uptime: 2 days
Image: lscr.io/linuxserver/radarr:latest
Container ID: b717503fcc3d
Created: 2025-12-13 08:23:53
Size: 218MB
```
**Network**: `ix-plex_default` (bridge)
**Exposed Port**:
- `7878/tcp``0.0.0.0:7878` (Web UI)
**Storage Paths**:
- Movies: `/mnt/Vauly/media/movies`
- Configuration & Cache: Standard arr volumes
**Function**: Monitors movie release indexes and automatically manages movie acquisitions. Integrates with Bazarr for subtitle management.
---
#### Bazarr (arr-stack-bazarr-1)
```
Status: Running ✓
Uptime: 2 days
Image: lscr.io/linuxserver/bazarr:latest
Container ID: bcb36fb9aa89
Created: 2025-12-13 08:23:53
Size: 424MB (largest arr container)
```
**Network**: `ix-plex_default` (bridge)
**Exposed Port**:
- `6767/tcp``0.0.0.0:6767` (Web UI)
**Storage Paths**:
- Media library: Access to Radarr/Sonarr managed content
- Download directory: For subtitle file placement
- Configuration: Shared `ix-plex_default` context
**Function**: Monitors media added by Radarr/Sonarr and automatically downloads matching subtitles from OpenSubtitles, SubDB, and other sources. Supports multiple language priorities and format conversion.
**Integration**: Watches Sonarr/Radarr API for library changes and proactively downloads subtitles before media arrives at Plex.
---
### VPN & Torrent Infrastructure
#### Gluetun (VPN Gateway)
```
Status: Running (Unhealthy ⚠)
Uptime: 2 days
Image: qmcgaw/gluetun
Container ID: 26bc7cd665e9
Created: 2025-12-13 19:52:09
Size: 49.8MB
```
**Network**: `vpn-deluge_default` (Compose bridge network for VPN isolation)
**Exposed Ports**:
- `8112/tcp``0.0.0.0:8112` (SOCKS5 proxy for Deluge)
- `9696/tcp``0.0.0.0:9696` (VPN port forward notification)
- Internal: `8000/tcp, 8388/tcp, 8888/tcp, 8388/udp`
**Function**: Universal VPN client providing tunneled egress for Deluge and other services requiring anonymized connections. Supports multiple VPN providers (NordVPN, Mullvad, Private Internet Access, etc.).
**Health Status Analysis**:
- **Status**: UNHEALTHY (connection dropped or test failing)
- **Likely Causes**:
1. VPN provider authentication failure
2. VPN endpoint unreachable
3. Network interface misconfiguration
4. Credentials expired
5. Health check probe timeout
**Resolution Steps**:
1. Check VPN provider credentials in container environment
2. Verify network connectivity to VPN provider
3. Review container logs: `docker logs gluetun`
4. Restart container to re-establish connection
5. Test SOCKS proxy: `curl --socks5 localhost:8112 https://api.ipify.org`
---
#### Deluge (Torrent Client)
```
Status: Running ✓
Uptime: 2 days
Image: lscr.io/linuxserver/deluge
Container ID: e10aa1ce7cba
Created: 2025-12-13 19:52:10
Size: 151MB
```
**Network Configuration**: Routes through Gluetun VPN gateway
**Storage Paths**:
- Download staging: `/mnt/Vauly/media/downloads/`
- Watch directory: `/mnt/Vauly/media/incomplete/`
- Configuration: Shared `vpn-deluge_default` context
**Function**: BitTorrent client that tunnels all traffic through Gluetun for privacy. Downloads torrent files matching arr stack searches and stages them for sorting.
**Integration Flow**:
1. Prowlarr finds torrent match
2. Sonarr/Radarr adds torrent to Deluge
3. Deluge downloads via Gluetun VPN tunnel
4. Media moves to appropriate Plex folder
5. Bazarr adds subtitles
---
### Content Discovery & Indexing
#### Prowlarr (Indexer Aggregator)
```
Status: Running ✓
Uptime: 2 days
Image: lscr.io/linuxserver/prowlarr:latest
Container ID: 5c1edaf31660
Created: 2025-12-13 19:52:10
Size: 193MB
```
**Network**: Custom mounts (independent service, not bound to Compose network)
**Storage**: `/mnt/Vauly/media/` access for configuration
**Function**: Central indexer management hub. Provides unified interface to 1000+ torrent and usenet indexers. Integrates with Sonarr/Radarr via API.
**Architecture**:
- Acts as proxy between arr stack and multiple indexers
- Handles authentication & scraping for each indexer
- Provides single configuration point for Sonarr/Radarr
- Reduces duplicate work across arr services
---
#### FlareSolverr (Cloudflare Challenge Solver)
```
Status: Running ✓
Uptime: 2 days
Image: flaresolverr/flaresolverr:latest
Container ID: b9c3baf08da4
Created: 2025-12-13 21:37:11
Size: 1.02GB
```
**Network**: Custom mounts (independent service)
**Exposed Port**: Internal only (default 8191, browser automation endpoint)
**Storage**: 1 local volume for session/cache data
**Function**: Solves Cloudflare challenges using browser automation (Chromium). Allows Prowlarr to access Cloudflare-protected indexer sites.
**Workflow**:
1. Prowlarr attempts to access indexer
2. Indexer returns Cloudflare challenge
3. Prowlarr redirects request to FlareSolverr
4. FlareSolverr uses headless browser to solve challenge
5. Challenge cookie passed back to Prowlarr
6. Successful indexer access for searching
**Resource Impact**: High (1GB+ due to Chromium bundle). Consider resource-constrained environments.
---
### Infrastructure Management
#### Dockge (Docker Compose Manager)
```
Status: Running (Healthy ✓)
Uptime: 3 days
Image: louislam/dockge:1.5.0
Container ID: 45f46edd8923
Created: 2025-12-12 19:11:22
Size: 755MB
```
**Network**: `ix-dockge_default` (isolated Compose bridge network)
**Exposed Port**:
- `31014/tcp``0.0.0.0:31014` (Web UI)
- Internal: `5001/tcp` (inter-container communication)
**Privileged Mounts**:
- Docker socket: `/var/run/docker.sock` (R/W) - **High privilege**
- Configuration: `/mnt/.ix-apps/app_configs/dockge/`
- App paths: `/mnt/.ix-apps/docker/`
**Security Capabilities**: CHOWN, DAC_OVERRIDE, FOWNER, KILL, SETFCAP, SETGID, SETPCAP, SETUID
- **Warning**: Extensive system permissions required for Docker manipulation
**Web UI Access**:
- URL: `http://<truenas-ip>:31014`
- Features: Compose file editor, container logs, real-time monitoring, deployment management
**Function**: Provides graphical interface for Docker Compose management on TrueNAS. Central point for monitoring and updating container stacks.
**Use Cases**:
- View running compose projects
- Edit docker-compose.yml files
- Deploy/update containers
- View logs in real-time
- Manage container lifecycle
- Network monitoring
---
### Monitoring & System Observability
#### Beszel Agent (System Monitoring)
```
Status: Running ✓
Uptime: 3 weeks (since last TrueNAS restart)
Image: henrygd/beszel-agent
Container ID: b5842204dad7
Created: 2025-09-21 20:18:12
Size: 8.35MB
```
**Network**: `host` (direct host network access, no isolation)
**Mounts**:
- Docker socket: `/var/run/docker.sock` (read-only)
- Host system: Full access
**Function**: Lightweight system metrics collection agent. Collects CPU, memory, disk, and network statistics. Reports to Beszel central hub for unified infrastructure monitoring across multiple hosts.
**Data Collection**:
- CPU usage per core
- Memory (used/available/swap)
- Disk I/O and space utilization
- Network throughput
- Container-level metrics (via Docker socket)
- System load averages
- Uptime tracking
**Integration**: Communicates with Beszel central server (hosted elsewhere) via API for metrics aggregation and alerting.
---
### VPN Client Instances
Two standalone NordVPN/WireGuard client containers for testing or geographic diversity.
#### epic_dewdney (NordVPN Instance #1)
```
Status: Running (Unhealthy ⚠)
Uptime: 2 days
Image: ghcr.io/bubuntux/nordlynx
Container ID: c2fbbec99464
Created: 2025-12-13 17:24:50
Size: 31.7MB
```
**Network**: `bridge` (standard Docker bridge, not Compose-managed)
**Function**: Independent NordVPN WireGuard tunnel. Likely used for specific use cases or testing.
**Health Status**: Unhealthy - VPN connection issue
---
#### frosty_gates (NordVPN Instance #2)
```
Status: Running (Unhealthy ⚠)
Uptime: 2 days
Image: ghcr.io/bubuntux/nordlynx
Container ID: a61438137ff9
Created: 2025-12-13 17:17:26
Size: 31.7MB
```
**Network**: `bridge` (standard Docker bridge)
**Function**: Second independent NordVPN tunnel instance
**Health Status**: Unhealthy - VPN connection issue
**Analysis**: Both instances reporting unhealthy likely indicates a broader issue:
- NordVPN provider credentials misconfigured
- Network connectivity issue affecting both
- WireGuard kernel module not loaded
- Latest NordVPN API endpoint changes
---
### Initialization & Utility Containers
#### ix-plex-permissions-1 (Plex Permission Setup)
```
Status: Exited (0) ✓ - Completed Successfully
Uptime: Exited 3 days ago
Image: ixsystems/container-utils:1.0.2
Container ID: 38c6a6005997
Created: 2025-12-12 19:30:02
Size: 120MB
```
**Network**: `none` (no network access needed)
**Mounts**:
- Plex volumes (R/W) for permission setting
- Plex library mount (R/O) for verification
**Function**: Short-lived initialization container that sets proper file permissions on Plex volumes after deployment. Runs once at Plex startup, then exits.
**Status**: Normal behavior (exit code 0 indicates successful completion)
---
## Docker Networks
| Network Name | Driver | Type | Connected Containers | Created |
|--------------|--------|------|----------------------|---------|
| **ix-plex_default** | bridge | Compose | Plex, Sonarr, Radarr, Bazarr | 2025-12-12 |
| **ix-dockge_default** | bridge | Compose | Dockge | 2025-12-12 |
| **vpn-deluge_default** | bridge | Compose | Gluetun, Deluge | 2025-12-13 |
| **bridge** | bridge | System | epic_dewdney, frosty_gates | 2025-11-24 |
| **host** | host | System | Beszel Agent | Built-in |
| **none** | null | System | ix-plex-permissions-1 (exited) | Built-in |
**Network Topology Notes**:
- **ix-plex_default**: Media stack (streaming + acquisition)
- **ix-dockge_default**: Infrastructure management (isolated)
- **vpn-deluge_default**: Torrent infrastructure (VPN tunneled)
- **bridge**: Legacy/standalone VPN instances
- **host**: Host-level monitoring (direct system access)
---
## Storage Architecture
### Volume Hierarchy
```
/mnt/Vauly/ (Primary ZFS Pool)
├── media/
│ ├── tv/ ← Sonarr output
│ ├── movies/ ← Radarr output
│ ├── music/ ← Future streaming
│ ├── downloads/ ← Deluge staging
│ └── incomplete/ ← Torrent in-progress
/mnt/.ix-apps/ (TrueNAS App Management)
├── app_configs/
│ ├── plex/
│ │ ├── metadata.yaml
│ │ └── versions/1.2.19/ ← Current version config
│ ├── dockge/
│ │ ├── metadata.yaml
│ │ ├── user_config.yaml ← Custom settings
│ │ └── versions/1.2.14/
│ ├── beszel/
│ ├── paperless-ngx/ ← Installed but unused
│ └── open-speed-test/ ← Installed but unused
├── docker/
│ └── volumes/
│ ├── <hash>/ ← Anonymous volumes
│ ├── <hash>/ ← Plex libraries
│ ├── <hash>/ ← Database stores
│ └── ... (6 total)
```
### Volume-to-Container Mapping
| Volume | Containers | Access Mode | Purpose |
|--------|------------|-------------|---------|
| `/mnt/Vauly/` | Plex, Sonarr, Radarr, Bazarr, Deluge, Prowlarr | R/W | Media files & configuration |
| `/mnt/.ix-apps/app_configs/plex/` | Plex | R/W | Plex database and library metadata |
| `/mnt/.ix-apps/docker/volumes/*` | Ix-apps managed | R/W | App-specific persistent data |
| `/var/run/docker.sock` | Dockge, Beszel | R/W (Dockge), R/O (Beszel) | Docker daemon communication |
| Anonymous volumes | Various | R/W | Temporary/cache data |
---
## Health & Status Analysis
### Running State Summary
```
Total Containers: 13
├── Running: 10
│ ├── Healthy: 2 (Plex, Dockge - confirmed)
│ ├── Unhealthy: 3 (Gluetun, epic_dewdney, frosty_gates - VPN issues)
│ └── Unknown: 5 (arr stack, Prowlarr, FlareSolverr, Deluge, Beszel)
└── Not Running: 3
├── Exited (0): 1 (ix-plex-permissions-1 - normal completion)
├── Exited (non-0): 0
└── Removed: 2 (Paperless-ngx, Open Speed Test)
```
### Health Check Analysis
#### Healthy Containers
1. **Plex** - Health check passing, server responsive
2. **Dockge** - Web UI accessible, container management functional
#### Unhealthy Containers (VPN-Related Issues)
**Gluetun Analysis**:
- Service started successfully 2 days ago
- Health check began failing shortly after
- Likely: VPN provider connectivity issue, expired credentials, or health check configuration too strict
**NordVPN Instances (epic_dewdney, frosty_gates)**:
- Both report unhealthy simultaneously
- Suggests shared cause (VPN provider change, API issue, etc.)
- Not directly impacting core services (isolated instances)
**Recommendation**: These VPN issues don't affect Plex/arr-stack operation but should be resolved for proper functionality.
#### Unknown Status Containers
These containers don't have explicit health checks configured but appear to be running:
- Sonarr, Radarr, Bazarr, Deluge, Prowlarr, FlareSolverr, Beszel Agent
To improve visibility, consider adding health checks to these services in docker-compose configurations.
---
## TrueNAS App Catalog Status
### Installed & Running
| App | Version | Status | Portal |
|-----|---------|--------|--------|
| Plex | 1.2.19 | Installed & Running | http://192.168.2.150:32400/web |
| Dockge | 1.2.14 | Installed & Running | http://192.168.2.150:31014/ |
| Beszel | 1.0.0 | Custom app, running | N/A (agent only) |
### Installed but Unused/Not Running
| App | Version | Status | Reason |
|-----|---------|--------|--------|
| Open Speed Test | 1.0.21 | Installed | Not actively used |
| Paperless-ngx | 1.3.27 | Installed | Configuration may be incomplete |
### Available for Installation
Many more apps available in TrueNAS community/stable catalogs:
- **Media**: Jellyfin, Kaleidescape, MyMediaforMass
- **Productivity**: LibreOffice, Nextcloud, Syncthing
- **Database**: PostgreSQL, MongoDB, Elasticsearch
- **Utilities**: Uptime Kuma, Authelia, VaultWarden
---
## Disaster Recovery & Backup
### Export Location & Contents
```
/home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/
├── exports/
│ └── apps/
│ ├── docker-containers.json ← 13 containers + metadata
│ ├── docker-containers.txt ← Human-readable format
│ ├── docker-images.json ← 12 images + details
│ ├── docker-networks.json ← 6 networks configuration
│ ├── docker-volumes.json ← All volume definitions
│ ├── docker-compose-projects.json ← Compose project metadata
│ ├── app_configs_list.txt ← Directory tree
│ ├── app_mounts_list.txt ← Mount point listing
│ ├── docker_sizes.txt ← Storage footprint
│ └── containers/ ← Individual container exports
│ ├── flaresolverr.json
│ ├── prowlarr.json
│ ├── deluge.json
│ ├── gluetun.json
│ ├── epic_dewdney.json
│ ├── frosty_gates.json
│ ├── arr-stack-*.json (3 files)
│ ├── ix-plex-*.json (2 files)
│ ├── ix-dockge-dockge-1.json
│ └── beszel-agent.json
└── configs/
└── apps/
└── metadata.yaml ← TrueNAS apps catalog metadata
```
### Recovery Procedures
#### Restore Container Configuration
```bash
# View container export
cat /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-containers.json | jq '.[] | {name: .Names, image: .Image, status: .Status}'
# Extract specific container details
jq '.[] | select(.Names | contains("plex"))' /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-containers.json
```
#### Restore from TrueNAS UI
1. Access TrueNAS Web UI → Apps
2. For each app in the inventory:
- Click "Install" from appropriate catalog (stable/community)
- Upload saved configuration if available
- Configure environment variables and mounts
- Deploy
#### Rebuild Compose Projects
```bash
# Export compose definitions from Dockge
# Via Dockge UI: http://192.168.2.150:31014/
# Or via API/Docker daemon
# Restore Docker volumes (requires separate process)
# Consider using:
# - docker volume restore (from backups)
# - ZFS snapshot rollback
# - Manual data copy from backup source
```
#### Restore Media Library
This requires separate backup strategy:
1. Restore ZFS snapshots to `/mnt/Vauly/`
2. Or restore from external backup source
3. Or resync from original media sources
---
## Configuration Recommendations
### Immediate Actions Required
1. **Fix VPN Connectivity** (Priority: Medium)
- Investigate Gluetun unhealthy status
- Check Gluetun logs: `docker logs gluetun`
- Verify VPN provider credentials
- Consider restarting service
- Verify health check logic not too restrictive
2. **Monitor NordVPN Instances** (Priority: Low)
- Decide if these are needed
- If not, consider removing to free resources
- If needed, diagnose and fix connection issues
3. **Add Health Checks** (Priority: Medium)
- Sonarr: HTTP check on port 8989
- Radarr: HTTP check on port 7878
- Bazarr: HTTP check on port 6767
- Prowlarr: HTTP check on default port
- FlareSolverr: Browser automation endpoint check
- Deluge: Connection pool check
### Security Hardening
1. **Network Segmentation**
- Consider separate VLAN for media services
- Restrict Plex port exposure (currently 0.0.0.0:32400)
- Implement firewall rules per service
2. **Access Control**
- Add authentication to Dockge (currently exposed)
- Secure Prowlarr/FlareSolverr endpoints
- Consider reverse proxy with OAuth/OIDC
3. **Secrets Management**
- Use TrueNAS Secrets for environment variables
- Don't commit API keys to git
- Rotate credentials regularly
- Use dedicated VPN accounts for each service
4. **Resource Limits**
```yaml
# Add to docker-compose
services:
plex:
deploy:
resources:
limits:
cpus: '4'
memory: 4G
reservations:
cpus: '2'
memory: 2G
```
5. **Logging & Monitoring**
- Enable Docker logging drivers (json-file with rotation)
- Forward logs to central logging (ELK, Loki)
- Implement alerting on unhealthy containers
- Track container restart patterns
### Performance Optimization
1. **Image Updates**
```bash
# Check for newer image versions
docker images --format "table {{.Repository}}\t{{.Tag}}\t{{.Created}}"
# Pull updates
docker pull lscr.io/linuxserver/sonarr:latest
```
2. **Cleanup Unused Resources**
```bash
# Remove dangling images
docker image prune -a -f
# Remove unused volumes
docker volume prune -f
# Remove exited containers
docker container prune -f
```
3. **Storage Optimization**
- Monitor `/mnt/Vauly/` usage
- Implement automated cleanup (old downloads)
- Consider compression for archive media
---
## Related Documentation
### In This Repository
- **README.md**: Overview and quick start
- **INDEX.md**: Complete file navigation and reference
- **CLAUDE.md**: AI assistant guidelines and architecture
- **scripts/collect-truenas-apps.sh**: Collection script source code
- **disaster-recovery/**: All exported configurations
### External Resources
- **TrueNAS Docs**: https://www.truenas.com/docs/scale/
- **Docker Docs**: https://docs.docker.com/
- **Plex Support**: https://support.plex.tv/
- **Arr Stack Wikis**:
- Sonarr: https://wiki.servarr.com/sonarr
- Radarr: https://wiki.servarr.com/radarr
- Bazarr: https://wiki.servarr.com/bazarr
- Prowlarr: https://wiki.servarr.com/prowlarr
---
## Appendix: Raw Data Access
### Query Individual Container Details
```bash
# All containers in JSON
jq . /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-containers.json
# Single container
jq '.[] | select(.Names == "ix-plex-plex-1")' /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-containers.json
# Container IDs and names only
jq '.[] | {id: .ID, name: .Names}' /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-containers.json
```
### Network Configuration Access
```bash
jq . /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-networks.json
```
### Volume Inventory
```bash
jq . /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-volumes.json
```
### Docker Images
```bash
jq . /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/exports/apps/docker-images.json
```
### App Metadata
```bash
cat /home/jramos/truenas/disaster-recovery/truenas-apps-export-20251216-143515/configs/apps/metadata.yaml
```
---
**Document Version**: 1.0
**Last Updated**: 2025-12-16 14:35:15
**Export Source**: TrueNAS Scale at 192.168.2.150
**Maintained By**: Scribe (Documentation Agent)
**Format**: Markdown
**License**: Personal Use (Same as Repository)