NAS02 is a QNAP-based network attached storage server providing comprehensive media management, network video recording, and centralized storage for the homelab infrastructure.
The server uses a modular architecture with three main functional areas:
-
Media Management Stack (/media/)
-
Network Video Recorder (/nvr/)
-
Monitoring Stack (/monitoring/)
-
Automated content acquisition and organization
-
User request system
-
E-book library management
-
File synchronization
-
AI-powered video surveillance
-
Multi-camera support
-
Intelligent object detection
-
Container log aggregation
-
System resource monitoring
- Authentication: Uses Authentik SSO from lucille4
- Monitoring: Sends metrics to loose-seal Grafana
- Logging: Centralized GELF logging to 192.168.1.4:12201
- Storage: Provides network shares for other servers
- Backup: Automated configuration backups to Backblaze B2
- Purpose: Usenet binary downloader
- Features: Automated downloading, verification, extraction
- Integration: Works with Radarr/Sonarr for automated downloads
- Purpose: Movie collection management
- Features:
- Automated movie discovery and downloading
- Quality management and upgrades
- Metadata and artwork management
- Config: Custom configuration at
/media/radarr/config.xml
- Purpose: TV show collection management
- Features:
- Series monitoring and episode tracking
- Automatic quality upgrades
- Season pack handling
- Config: Custom configuration at
/media/sonarr/config.xml
- Purpose: User-friendly media request interface
- Features:
- Simplified content discovery
- Request approval workflow
- Integration with Radarr/Sonarr
- Purpose: YouTube and web video downloader
- Features: Archive web content, playlist support
- Purpose: E-book library management
- Features: Web-based reader, format conversion, metadata editing
- Purpose: Decentralized file synchronization
- Features: P2P sync, versioning, selective sync
- AI Object Detection: Real-time person, vehicle, and object detection
- Smart Alerts: Configurable notifications based on detected events
- Zone Management: Custom detection zones with sensitivity settings
- Recording Options: Event-based and continuous recording
- Multi-camera Support: Efficient processing of multiple streams
- Hardware Acceleration: GPU support for AI inference
- Stream Optimization: Automatic quality adjustment
- Storage Management: Configurable retention policies
- Backup configuration stored at
/nvr/frigate/config/backup_config.yaml
- Custom zones and object detection settings
- Integration with home automation systems
- Purpose: Real-time Docker container log viewer
- Features: Web UI, log search, multi-container view
- Integration: Connects to main Dozzle instance
- Purpose: System resource monitoring
- Features: CPU, memory, disk, network metrics
- Integration: Reports to central Beszel server
/share/Container/
├── media/
│ ├── movies/
│ ├── tv/
│ ├── downloads/
│ └── books/
├── nvr/
│ ├── recordings/
│ └── clips/
└── backups/
- Consistent PUID/PGID: 1000 across all services
- Proper file ownership for media management
- Secure access control for sensitive data
## Media stack
cd /share/Container/homelab-nas02/media/
docker-compose up -d
## NVR system
cd /share/Container/homelab-nas02/nvr/
docker-compose up -d
## Monitoring
cd /share/Container/homelab-nas02/monitoring/
docker-compose up -d
## Service-specific logs
docker-compose logs -f [service_name]
## All services in stack
docker-compose logs -f
cd /share/Container/homelab-nas02/media/
./backup.sh
The backup script:
- Uses Restic for incremental backups
- Targets Backblaze B2 cloud storage
- Backs up all service configurations
- Excludes media content (handled separately)
- Primary: QNAP RAID configuration
- Secondary: Critical content to cloud storage
- Real-time: Syncthing for important directories
- Discovery: Radarr/Sonarr monitor for new content
- Request: Users submit requests via Jellyseerr
- Download: Sabnzbd handles Usenet downloads
- Processing: Automatic unpacking and verification
- Organization: Files moved to proper directories
- Metadata: Artwork and information added
- Availability: Content available to media servers
- Automatic quality upgrades when available
- Configurable quality profiles
- Storage optimization options
- Bandwidth management settings
- Verify Sabnzbd API key configuration
- Check Radarr/Sonarr indexer settings
- Confirm download client connectivity
- Review available disk space
- Verify camera stream accessibility
- Check AI model loading
- Review zone configuration
- Confirm hardware acceleration
- Check Container Station status
- Verify port mappings
- Review firewall settings
- Check service logs for errors
- Use SSD cache for active downloads
- Regular RAID scrubbing
- Monitor disk health
- Dedicated VLAN for cameras
- Quality of Service (QoS) for media
- Bandwidth monitoring
- GPU passthrough for Frigate
- Container resource limits
- CPU affinity settings
- Radarr:
http://nas02.local:7878
- Sonarr:
http://nas02.local:8989
- Sabnzbd:
http://nas02.local:8090
- Jellyseerr:
http://nas02.local:5055
- Calibre-Web:
http://nas02.local:8083
- Syncthing:
http://nas02.local:8384
- Frigate:
http://nas02.local:5000
- All services expose REST APIs
- API keys stored in configuration files
- Used by automation systems
date: '2025-01-06T00:00:00.000Z'
dateCreated: '2025-01-06T00:00:00.000Z'
description: Media hub and surveillance center with automated downloads and AI-powered
network video recording
editor: markdown
path: /tech/homelab/servers/nas02
published: true
tags: homelab, server, nas, media, frigate, radarr, sonarr, nas02
title: Homelab Server - nas02
The nas02 server is a dedicated Network Attached Storage (NAS) device that serves as the media hub and surveillance center of the homelab. This server manages media content, handles automated downloads, and provides network video recording capabilities.
- Sabnzbd: Usenet downloader for automated content acquisition
- Radarr: Movie collection management with automated searching and downloading
- Sonarr: TV show collection management with series monitoring
- Jellyseerr: Media request system providing a user-friendly interface for content requests
- MeTube: YouTube video downloader for archiving web content
- Calibre-Web: E-book library management and reading interface
- Syncthing: File synchronization across devices
- Frigate: AI-powered network video recorder with object detection
- Real-time camera feed processing
- Motion detection and smart alerts
- Person/vehicle/object recognition
- Recording and playback capabilities
- Dozzle Agent: Docker container log viewer and analysis
- Beszel Agent: System resource monitoring and metrics collection
The nas02 server uses a modular architecture organized by function:
- Media Stack: Automated content acquisition and management pipeline
- Surveillance Stack: AI-powered video processing and recording
- Monitoring Stack: System observability and log management
- Shared Storage: Centralized media storage accessible to all services
- Content Discovery: Automated searching across multiple sources
- Quality Management: Automatic quality upgrades and optimization
- Request System: User-friendly interface for content requests
- Multi-format Support: Movies, TV shows, books, and web content
- AI Object Detection: Real-time identification of people, vehicles, and objects
- Smart Alerts: Configurable notifications based on detected events
- Multi-camera Support: Simultaneous processing of multiple camera feeds
- Recording Management: Automatic retention policies and storage optimization
- Centralized Storage: Single source of truth for media files
- Cross-device Sync: File synchronization between devices
- Backup Integration: Restic-based backup to Backblaze B2
- Permission Management: Consistent PUID/PGID (1000) across services
## Start media services
cd media/
docker-compose up -d
## Start NVR services
cd nvr/
docker-compose up -d
## View service logs
docker-compose logs -f [service_name]
## Stop all services in a stack
docker-compose down
## Backup configurations
cd media/
./backup.sh
- Radarr/Sonarr: Custom configuration files for optimal performance
- Frigate: Camera-specific configuration with AI model settings
- Logging: Centralized logging to GELF server (192.168.1.4:12201)
- API keys and credentials stored in configuration files
- Network-isolated containers for security
- Regular configuration backups to prevent data loss
The nas02 server integrates with the homelab ecosystem by:
- Media Serving: Providing content to streaming services across the network
- Surveillance Data: Feeding security information to monitoring systems
- Storage Services: Acting as the primary storage backend for media content
- Monitoring Integration: Contributing metrics and logs to centralized monitoring
This server specializes in high-volume data processing, storage management, and automated content workflows while maintaining integration with the broader homelab infrastructure.