The definitive container-first self-hosting solution designed specifically for blendOS's immutable architecture.
BlendOS Awesome Stack combines the stability of immutable systems with the power of containerized services to create a comprehensive, maintainable, and scalable infrastructure platform.
- Container-First Design: Everything runs in containers, never modifies the immutable base
- Declarative Configuration: System state entirely defined in YAML
- Atomic Updates: Changes are either fully applied or not at all
- Rollback Safety: Easy system recovery and state management
- Intel + NVIDIA Acceleration: Full hardware transcoding support
- Multi-Core Utilization: Designed for high-performance systems
- Memory Efficient: Smart resource allocation across services
- Remote Management: Built for headless server operation
Choose exactly what you need:
- π¬ Media Stack: Plex, Jellyfin, *arr services
- π» Development Stack: Code environments, databases, CI/CD
- π Monitoring Stack: Grafana, Prometheus, system metrics
- π Productivity Stack: Vaultwarden, NextCloud, office tools
- π Networking Stack: VPN, reverse proxy, network services
# π Ultimate Media Stack with automatic dependency installation
bash <(curl -sL https://raw.githubusercontent.com/wlfogle/blendos-awesome-stack/master/scripts/install-media-stack.sh)
# βοΈ Or enhanced rebuild script (manual deps)
bash <(curl -sL https://raw.githubusercontent.com/wlfogle/blendos-awesome-stack/master/scripts/rebuild-ultimate-stack-enhanced.sh)β The enhanced installer automatically:
- Detects BlendOS system and optimizes for immutable architecture
- Installs missing dependencies (Docker, Docker Compose, curl, etc.)
- Configures 65+ services across 6 deployment phases
- Sets up VPN-secured downloads and monitoring
- Creates management dashboards and shortcuts
# Clone the repository
git clone https://github.com/wlfogle/blendos-awesome-stack
cd blendos-awesome-stack
# Install media stack only (recommended for first time)
sudo ./scripts/install.sh
# Or install everything
sudo ./scripts/install.sh --all# See what would be installed without making changes
sudo ./scripts/install.sh --dry-run --allComplete media server solution with hardware acceleration:
| Service | Purpose | Port | Status |
|---|---|---|---|
| Plex | Media server with transcoding | :32400 |
β Ready |
| Jellyfin | Open-source media server | :8096 |
β Ready |
| Sonarr | TV series management | :8989 |
β Ready |
| Radarr | Movie management | :7878 |
β Ready |
| Lidarr | Music management | :8686 |
β Ready |
| Readarr | Book management | :8787 |
β Ready |
| qBittorrent | Download client | :8080 |
β Ready |
| Prowlarr | Indexer management | :9696 |
β Ready |
| Jackett | Additional indexers | :9117 |
β Ready |
| Overseerr | Request management | :5055 |
β Ready |
| Ombi | Alternative requests | :3579 |
β Ready |
| Tautulli | Plex analytics | :8181 |
β Ready |
Self-hosted productivity and collaboration tools:
| Service | Purpose | Port | Status |
|---|---|---|---|
| Vaultwarden | Password manager (Bitwarden) | :8088 |
β Ready |
| NextCloud | Cloud storage & sync | :8089 |
β Ready |
| OnlyOffice | Office suite | :8082 |
π§ Planned |
| Joplin Server | Note taking | :8083 |
π§ Planned |
| Kanboard | Project management | :8084 |
π§ Planned |
| Matrix | Communication | :8085 |
π§ Planned |
| BookStack | Wiki/documentation | :8087 |
π§ Planned |
Complete development environment:
- Code Server: VS Code in browser
- GitLab/Gitea: Git repository hosting
- PostgreSQL/MySQL: Database services
- Redis: Caching and sessions
- Jenkins: CI/CD pipelines
System monitoring and alerting:
- Grafana: Metrics visualization
- Prometheus: Metrics collection
- Uptime Kuma: Service monitoring
- ELK Stack: Log management
Network services and security:
- WireGuard: VPN server
- Traefik: Reverse proxy
- Fail2Ban: Security monitoring
# Media stack only (default)
sudo ./scripts/install.sh --media
# Add productivity tools
sudo ./scripts/install.sh --media --productivity
# Development environment
sudo ./scripts/install.sh --development --monitoring# Disable GPU acceleration
sudo ./scripts/install.sh --no-gpu
# Disable VNC/remote desktop
sudo ./scripts/install.sh --no-vnc
# Skip dependency installation
sudo ./scripts/install.sh --skip-deps# Check status of all stacks
awesome-stack status
# Start/stop individual stacks
awesome-stack media start
awesome-stack productivity stop
awesome-stack all restart
# Quick access to logs
awesome-stack media logs
awesome-stack productivity logs plex# Comprehensive system status
awesome-stack status
# Hardware monitoring
awesome-stack hardware
# Container resource usage
awesome-stack resourcesAfter installation, access your services through these URLs:
- π¬ Plex: http://localhost:32400/web
- π₯ Jellyfin: http://localhost:8096
- πΊ Sonarr: http://localhost:8989
- π¬ Radarr: http://localhost:7878
- β¬οΈ qBittorrent: http://localhost:8080
- π Overseerr: http://localhost:5055
- π Vaultwarden: http://localhost:8088
- βοΈ NextCloud: http://localhost:8089
- π₯οΈ VNC:
vnc://localhost:5999 - π Web VNC: http://localhost:6099 (Password:
awesomestack123)
blendOS Host (Immutable)
βββ Podman Containers
β βββ Media Stack (:8000-8999)
β βββ Productivity Stack (:8000-8999)
β βββ Development Stack (:9000-9999)
β βββ Monitoring Stack (:3000-3999)
β βββ Networking Stack (:1000-1999)
βββ Virtual Displays (VNC)
β βββ :99-:108 (Xvfb + VNC + noVNC)
β βββ Web Access (:6099-6108)
βββ GPU Passthrough (Looking Glass)
βββ Intel iGPU (Transcoding)
βββ NVIDIA RTX (Gaming/Compute)
- Isolated Networks: Each stack runs in its own network
- Shared Volumes: Media and download directories shared
- Resource Limits: CPU and memory limits per service
- Health Checks: Automatic service monitoring
- Auto-Restart: Services restart on failure
- OS: blendOS (latest)
- CPU: 4+ cores
- RAM: 8GB+
- Storage: 100GB+ available
- Network: Stable internet connection
- CPU: Intel i7/i9 or AMD Ryzen 7/9
- RAM: 32GB+ (our test system: 62GB)
- GPU: Intel iGPU + dedicated GPU for transcoding
- Storage: NVMe SSD + bulk storage drives
- Network: Gigabit+ connection
- CPU: Intel i9-13900HX (32 threads) β
- RAM: 62GB DDR5 β
- GPU: NVIDIA RTX 4080 + Intel iGPU β
- Storage: Multiple NVMe drives
- Network: Gigabit fiber connection
- Container Isolation: Services can't access host system
- Network Segmentation: Isolated container networks
- Regular Updates: Automated container updates
- Secure Defaults: Security-focused default configurations
- VPN Ready: Built-in VPN server support
- Change Default Passwords: Update all default passwords
- Enable 2FA: Use Vaultwarden for 2FA storage
- Network Security: Configure firewall rules
- Regular Backups: Set up automated backups
- Monitor Logs: Review system and container logs
- π Installation Guide: Step-by-step setup
- βοΈ Configuration: Detailed configuration options
- π§ Troubleshooting: Common issues and solutions
- ποΈ Architecture: Technical architecture details
- πΊοΈ Project Plan: Development roadmap
We welcome contributions! Here's how you can help:
- π Bug Reports: Found an issue? Let us know!
- π‘ Feature Requests: Have ideas for improvements?
- π Documentation: Help improve our docs
- π§ͺ Testing: Test on different hardware configurations
- π» Code: Submit pull requests for new features
# Fork and clone the repository
git clone https://github.com/yourusername/blendos-awesome-stack
cd blendos-awesome-stack
# Create a feature branch
git checkout -b feature/amazing-new-feature
# Make your changes and test
sudo ./scripts/install.sh --dry-run
# Submit a pull request| Stack | Status | Completion |
|---|---|---|
| Media | β Ready | 100% |
| Productivity | π§ In Progress | 60% |
| Development | π Planned | 0% |
| Monitoring | π Planned | 0% |
| Networking | π Planned | 0% |
- v0.2.0: Complete productivity stack
- v0.3.0: Development environment
- v0.4.0: Monitoring and alerting
- v0.5.0: Networking services
- v1.0.0: Stable release
A: blendOS's immutable architecture provides excellent stability for long-running services while the container support makes it perfect for self-hosting.
A: This stack is optimized for blendOS. While the containers will work elsewhere, the installation and management scripts are blendOS-specific.
A: With all stacks running, expect to use 8-16GB RAM and 4-8 CPU cores under normal load. Individual stacks use much less.
A: Currently in alpha. We recommend testing thoroughly before production use. Beta release planned for Q2 2025.
A: All container data is stored in /opt/awesome-stack/. Regular backups of this directory will preserve all configurations and data.
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π§ Email: Contact Form
- π¬ Matrix: Coming soon!
This project is licensed under the MIT License - see the LICENSE file for details.
- blendOS Team: For creating an excellent immutable distribution
- Podman Project: For containerization without daemon
- Community Contributors: Everyone who helps test and improve this project
β Star this repository if it helped you! β
Built with β€οΈ for the blendOS community