An open API service indexing awesome lists of open source software.

https://github.com/wlfogle/blendos-awesome-stack

πŸš€ BlendOS Ultimate Media Stack v2.0 - AI-enhanced deployment of 65+ services optimized for BlendOS immutable architecture
https://github.com/wlfogle/blendos-awesome-stack

List: blendos-awesome-stack

ai-enhanced automation blendos container-stack docker-compose grafana homelab immutable-os jellyfin media-server media-stack plex portainer prometheus prowlarr radarr self-hosted sonarr traefik vpn

Last synced: 5 months ago
JSON representation

πŸš€ BlendOS Ultimate Media Stack v2.0 - AI-enhanced deployment of 65+ services optimized for BlendOS immutable architecture

Awesome Lists containing this project

README

          

# πŸš€ BlendOS Awesome Stack

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![BlendOS](https://img.shields.io/badge/Platform-blendOS-blue.svg)](https://blendos.co/)
[![Podman](https://img.shields.io/badge/Container-Podman-892CA0.svg)](https://podman.io/)
[![Status](https://img.shields.io/badge/Status-Alpha-orange.svg)]()

**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.

## 🌟 **Why BlendOS Awesome Stack?**

### **πŸ—οΈ Built for Immutable Systems**
- **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

### **⚑ Optimized for Modern Hardware**
- **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

### **πŸ”§ Modular Architecture**
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

---

## πŸš€ **Quick Start**

### ✨ **Enhanced One-Line Installation (Recommended)**
```bash
# πŸŽ† 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

### **Traditional Repository Installation**
```bash
# 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
```

### **Preview Before Installing**
```bash
# See what would be installed without making changes
sudo ./scripts/install.sh --dry-run --all
```

---

## πŸ“¦ **Available Stacks**

### 🎬 **Media Stack** (Default)
Complete 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 |

### πŸ“‹ **Productivity Stack**
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 |

### πŸ’» **Development Stack** (Coming Soon)
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

### πŸ“Š **Monitoring Stack** (Coming Soon)
System monitoring and alerting:
- **Grafana**: Metrics visualization
- **Prometheus**: Metrics collection
- **Uptime Kuma**: Service monitoring
- **ELK Stack**: Log management

### 🌐 **Networking Stack** (Coming Soon)
Network services and security:
- **WireGuard**: VPN server
- **Traefik**: Reverse proxy
- **Fail2Ban**: Security monitoring

---

## πŸ› οΈ **Installation Options**

### **Individual Stacks**
```bash
# 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
```

### **Hardware Options**
```bash
# 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
```

---

## πŸ”§ **Management**

### **Service Control**
```bash
# 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
```

### **System Information**
```bash
# Comprehensive system status
awesome-stack status

# Hardware monitoring
awesome-stack hardware

# Container resource usage
awesome-stack resources
```

---

## 🌐 **Access Your Services**

After installation, access your services through these URLs:

### **Media Services**
- 🎬 **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

### **Productivity Services**
- πŸ” **Vaultwarden**: http://localhost:8088
- ☁️ **NextCloud**: http://localhost:8089

### **Remote Access**
- πŸ–₯️ **VNC**: `vnc://localhost:5999`
- 🌐 **Web VNC**: http://localhost:6099 (Password: `awesomestack123`)

---

## πŸ—οΈ **Architecture**

### **System Design**
```
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)
```

### **Container Strategy**
- **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

---

## πŸ“‹ **System Requirements**

### **Minimum Requirements**
- **OS**: blendOS (latest)
- **CPU**: 4+ cores
- **RAM**: 8GB+
- **Storage**: 100GB+ available
- **Network**: Stable internet connection

### **Recommended Hardware**
- **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

### **Our Test Configuration**
- **CPU**: Intel i9-13900HX (32 threads) βœ…
- **RAM**: 62GB DDR5 βœ…
- **GPU**: NVIDIA RTX 4080 + Intel iGPU βœ…
- **Storage**: Multiple NVMe drives
- **Network**: Gigabit fiber connection

---

## πŸ”’ **Security**

### **Built-in Security Features**
- **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

### **Recommended Security Steps**
1. **Change Default Passwords**: Update all default passwords
2. **Enable 2FA**: Use Vaultwarden for 2FA storage
3. **Network Security**: Configure firewall rules
4. **Regular Backups**: Set up automated backups
5. **Monitor Logs**: Review system and container logs

---

## πŸ“š **Documentation**

- πŸ“– **[Installation Guide](docs/INSTALLATION.md)**: Step-by-step setup
- βš™οΈ **[Configuration](docs/CONFIGURATION.md)**: Detailed configuration options
- πŸ”§ **[Troubleshooting](docs/TROUBLESHOOTING.md)**: Common issues and solutions
- πŸ—οΈ **[Architecture](docs/ARCHITECTURE.md)**: Technical architecture details
- πŸ—ΊοΈ **[Project Plan](PROJECT_PLAN.md)**: Development roadmap

---

## 🀝 **Contributing**

We welcome contributions! Here's how you can help:

### **Ways to Contribute**
- πŸ› **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

### **Development Setup**
```bash
# 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
```

---

## πŸ“Š **Project Status**

### **Current Phase**: Alpha Development 🚧

| Stack | Status | Completion |
|-------|--------|------------|
| **Media** | βœ… Ready | 100% |
| **Productivity** | 🚧 In Progress | 60% |
| **Development** | πŸ“‹ Planned | 0% |
| **Monitoring** | πŸ“‹ Planned | 0% |
| **Networking** | πŸ“‹ Planned | 0% |

### **Upcoming Milestones**
- **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

---

## ❓ **FAQ**

### **Q: Why blendOS specifically?**
A: blendOS's immutable architecture provides excellent stability for long-running services while the container support makes it perfect for self-hosting.

### **Q: Can I run this on other distributions?**
A: This stack is optimized for blendOS. While the containers will work elsewhere, the installation and management scripts are blendOS-specific.

### **Q: How much resources does this use?**
A: With all stacks running, expect to use 8-16GB RAM and 4-8 CPU cores under normal load. Individual stacks use much less.

### **Q: Is this suitable for production?**
A: Currently in alpha. We recommend testing thoroughly before production use. Beta release planned for Q2 2025.

### **Q: How do I backup my data?**
A: All container data is stored in `/opt/awesome-stack/`. Regular backups of this directory will preserve all configurations and data.

---

## πŸ“ž **Support**

- πŸ› **Issues**: [GitHub Issues](https://github.com/wlfogle/blendos-awesome-stack/issues)
- πŸ’¬ **Discussions**: [GitHub Discussions](https://github.com/wlfogle/blendos-awesome-stack/discussions)
- πŸ“§ **Email**: [Contact Form](https://github.com/wlfogle/blendos-awesome-stack#contact)
- πŸ’¬ **Matrix**: Coming soon!

---

## πŸ“„ **License**

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

## πŸ™ **Acknowledgments**

- **[blendOS Team](https://blendos.co/)**: For creating an excellent immutable distribution
- **[Podman Project](https://podman.io/)**: 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*