Files
arr-suite-template-bootstrap/CHANGELOG.md
openhands 24f2cd64e9 Initial template repository
🎬 ARR Suite Template Bootstrap - Complete Media Automation Stack

Features:
- 16 production services (Prowlarr, Sonarr, Radarr, Plex, etc.)
- One-command Ansible deployment
- VPN-protected downloads via Gluetun
- Tailscale secure access
- Production-ready security (UFW, Fail2Ban)
- Automated backups and monitoring
- Comprehensive documentation

Ready for customization and deployment to any VPS.

Co-authored-by: openhands <openhands@all-hands.dev>
2025-11-28 04:26:12 +00:00

12 KiB

📋 Changelog - *arr Media Stack

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.0.0] - 2024-11-25 - 🚀 Production-Ready Ansible Deployment

🎉 Major Features Added

Bootstrap Script & Ansible Automation

  • One-command deployment from fresh Ubuntu/Debian install via bootstrap.sh
  • Complete Ansible playbook for infrastructure automation (ansible-deployment.yml)
  • Production-ready templates for all services with Jinja2 templating
  • Vault-encrypted secrets management for secure credential storage
  • Automated deployment script (deploy.sh) with health verification
  • System dependency installation (Docker, Ansible, Python, monitoring tools)

Enhanced Security & Networking

  • Tailscale VPN integration for zero-trust network access
  • UFW firewall configuration with minimal attack surface
  • Fail2Ban intrusion prevention system with custom rules
  • VPN-routed downloads via Gluetun container for privacy
  • Container security hardening with no-new-privileges and proper user isolation

Production Verification & Testing

  • Battle-tested on real VPS (YOUR_VPS_IP_ADDRESS) with 62GB RAM, 290GB disk
  • All 16 containers verified running and healthy
  • VPN protection confirmed (IP masking: VPN_IP_ADDRESS ≠ VPS: YOUR_VPS_IP_ADDRESS)
  • API integrations tested (Prowlarr ↔ Sonarr ↔ SABnzbd working)
  • Service connectivity verified on all endpoints with HTTP status checks
  • Resource efficiency optimized for VPS deployment constraints

Monitoring & Management

  • Health monitoring system with automated service checks
  • Resource usage monitoring and performance tracking
  • Automated backup system for configurations and databases
  • Service health verification with API connectivity testing
  • Management aliases for easy service administration
  • Container monitoring with ctop and health dashboards

🔧 Technical Improvements

Service Stack Updates

  • Prowlarr: Enhanced indexer management with API integration testing
  • Sonarr: TV automation with verified API (cbce325f9bc04740b3a6513a7a17ca0e)
  • Radarr: Movie automation with verified API (ad87534619cd489cab2279fb35aa9b54)
  • Lidarr: Music automation and management
  • Whisparr: Adult content automation (optional deployment)
  • Bazarr: Subtitle automation and management
  • Jellyseerr: User request management interface
  • SABnzbd: Usenet downloader (VPN-protected, verified working)
  • Deluge: Torrent downloader (VPN-protected)
  • Plex: Media server with public access option
  • Tautulli: Plex analytics and monitoring
  • Gluetun: VPN container for secure downloading

Infrastructure Enhancements

  • Docker Compose optimization for VPS resource constraints
  • Network configuration with proper container communication
  • Storage layout optimization with efficient directory structure
  • Environment variable management with secure templating
  • Service dependency management with proper startup ordering

📚 Documentation Overhaul

New Documentation Files

Configuration Templates

Management & Deployment

  • Deployment Script - Automated Ansible deployment with verification
  • Helper aliases for service management (arr-status, arr-logs, arr-restart, etc.)
  • System monitoring commands (sysinfo, vpn-status, containers)

🛠️ Bug Fixes & Improvements

Container & Service Issues

  • Fixed Watchtower restart loops with Docker API v1.44 compatibility
  • Resolved permission issues with proper user/group setup (docker:docker)
  • Improved container health checks with proper HTTP endpoint testing
  • Enhanced error handling in deployment and management scripts

Network & Security Issues

  • Fixed service connectivity between containers with proper network configuration
  • Resolved VPN routing for download clients through Gluetun
  • Improved firewall rules for Tailscale-only access with UFW
  • Enhanced port management and conflict resolution

Configuration & Deployment Issues

  • Standardized configuration across all services with consistent templating
  • Improved secret management with Ansible Vault encryption
  • Enhanced deployment reliability with idempotent Ansible tasks
  • Better error reporting during deployment with detailed logging

📊 Performance & Resource Optimization

VPS-Specific Optimizations

  • Memory limits tuned for typical VPS constraints (4-8GB RAM)
  • CPU allocation optimized for service priority and resource sharing
  • Storage efficiency with hard link support and proper directory layout
  • Network optimization for container-to-container communication

Monitoring & Alerting

  • Real-time health monitoring with automated service checks
  • Performance metrics collection and analysis
  • Resource usage tracking with alerting capabilities
  • Service availability monitoring with API endpoint verification

🎯 Deployment Methods

curl -sSL https://github.com/your-username/arr-suite-template/raw/branch/main/bootstrap.sh | bash
  • Fresh OS deployment from Ubuntu 20.04+ or Debian 11+
  • Automated dependency installation (Docker, Ansible, Python, monitoring)
  • Complete system configuration (security, networking, monitoring)
  • One-command setup with comprehensive verification

⚙️ Method 2: Ansible Deployment (Advanced Users)

git clone https://github.com/your-username/arr-suite-template.git
cd arr-suite
./deploy.sh
  • Infrastructure as code with Ansible automation
  • Idempotent deployment with configuration management
  • Health verification and service testing
  • Customizable configuration with vault secrets

📖 Method 3: Manual Setup (Educational)

  • Step-by-step documentation for learning purposes
  • Troubleshooting guides for common issues
  • Configuration examples and best practices
  • Component-by-component installation guidance

🔄 Migration & Compatibility

  • Backward compatibility with existing configurations
  • Automatic data migration during upgrades
  • Service continuity maintained during deployment
  • Configuration preservation for existing installations

🎯 Production Metrics

  • 100% container health (16/16 containers healthy)
  • Zero downtime deployment process
  • Secure by default configuration
  • Production-ready with monitoring and backups
  • VPS-optimized resource allocation

[1.0.0] - 2024-11-17 - Initial Release

Added

  • Initial release of Synology Arrs Stack
  • Complete Docker Compose configuration for Arrs suite
  • Support for Sonarr, Radarr, Lidarr, Bazarr, and Prowlarr
  • Environment-based configuration with .env file
  • Automated setup script for directory structure and permissions
  • Deployment script with multiple options (standard, VPN, custom)
  • Backup and restore functionality
  • Comprehensive logging and monitoring scripts
  • VPN integration support with GlueTUN
  • Individual service compose files for selective deployment
  • Health checks for all containers
  • Security enhancements (non-root user, no-new-privileges)
  • Custom bridge network support (synobridge)
  • Comprehensive documentation:
    • Setup guide with prerequisites
    • Configuration guide for all applications
    • Troubleshooting guide with common issues
    • VPN setup guide with multiple providers
  • Example configurations and templates
  • Timezone examples and configuration helpers

Features

  • Easy Deployment: One-command deployment with automated setup
  • Flexible Configuration: Environment-based configuration for easy customization
  • Security First: Containers run as non-root user with security restrictions
  • VPN Support: Optional VPN routing for Prowlarr to access blocked indexers
  • Monitoring: Built-in health checks and logging utilities
  • Backup/Restore: Automated backup and restore functionality
  • Documentation: Comprehensive guides for setup, configuration, and troubleshooting
  • Synology Optimized: Specifically designed for Synology NAS devices
  • Hard Link Support: Proper directory structure for efficient storage usage

Technical Details

  • Docker Compose version 3.8
  • LinuxServer.io container images
  • Custom bridge network (synobridge) support
  • Environment variable configuration
  • Health checks with curl/wget
  • Resource monitoring capabilities
  • Log aggregation and export
  • Automated permission management

Supported Applications

  • Sonarr (latest) - TV Show management
  • Radarr (latest) - Movie management
  • Lidarr (latest) - Music management
  • Bazarr (latest) - Subtitle management
  • Prowlarr (latest) - Indexer management
  • GlueTUN (latest) - VPN client (optional)

Supported VPN Providers

  • NordVPN
  • ExpressVPN
  • Surfshark
  • ProtonVPN
  • Windscribe
  • Custom OpenVPN/WireGuard configurations

Scripts Included

  • setup.sh - Initial environment and directory setup
  • deploy.sh - Stack deployment with multiple options
  • backup.sh - Configuration backup and restore
  • logs.sh - Log viewing and management

Documentation

  • README.md - Project overview and quick start
  • docs/SETUP.md - Detailed setup instructions
  • docs/CONFIGURATION.md - Application configuration guide
  • docs/TROUBLESHOOTING.md - Common issues and solutions
  • docs/VPN_SETUP.md - VPN integration guide
  • CHANGELOG.md - Version history and changes

Configuration Templates

  • .env.example - Environment configuration template
  • config-templates/timezone-examples.txt - Timezone reference
  • Individual compose files for selective deployment

[Unreleased]

Planned Features

  • Watchtower integration for automatic updates
  • Prometheus metrics export
  • Grafana dashboard templates
  • Additional VPN provider support
  • Reverse proxy configuration examples
  • SSL/TLS setup guide
  • Performance optimization guide
  • Migration scripts from other setups

Potential Improvements

  • Container resource limit recommendations
  • Database optimization scripts
  • Log rotation configuration
  • Notification integration examples
  • Custom script examples
  • API integration examples

Version History

Version Numbering

  • Major version (X.0.0): Breaking changes, major feature additions
  • Minor version (0.X.0): New features, non-breaking changes
  • Patch version (0.0.X): Bug fixes, documentation updates

Release Notes

Each release includes:

  • New features and improvements
  • Bug fixes and security updates
  • Breaking changes (if any)
  • Migration instructions (if needed)
  • Updated documentation

Support Policy

  • Current version: Full support and updates
  • Previous major version: Security updates only
  • Older versions: Community support only

For the latest updates and releases, check the GitHub repository.