# ⭐ Popular Services Guide

**🟡 Intermediate Guide**

This guide covers the most popular and useful services in the homelab, with detailed setup instructions and real-world usage examples. These services provide the most value and are great starting points for any homelab.

## 🎯 Top 10 Must-Have Services

| Rank | Service | Category | Difficulty | Why It's Essential |
|------|---------|----------|------------|-------------------|
| 1 | **Uptime Kuma** | Monitoring | 🟢 | Know when services go down |
| 2 | **Plex/Jellyfin** | Media | 🟢 | Your personal Netflix |
| 3 | **Vaultwarden** | Security | 🟡 | Secure password management |
| 4 | **Pi-hole** | Security | 🟡 | Block ads network-wide |
| 5 | **Portainer** | Management | 🟡 | Manage Docker containers easily |
| 6 | **Immich** | Media | 🟡 | Your personal Google Photos |
| 7 | **Nginx Proxy Manager** | Infrastructure | 🟡 | Manage web services with SSL |
| 8 | **Paperless-NGX** | Productivity | 🟡 | Go completely paperless |
| 9 | **Grafana + Prometheus** | Monitoring | 🔴 | Advanced system monitoring |
| 10 | **Syncthing** | Storage | 🟡 | Sync files without cloud |

---

## 1️⃣ Uptime Kuma - Service Monitoring

**🟢 Beginner-Friendly | Essential for Everyone**

### 🎯 What It Does
- Monitors all your services 24/7
- Sends alerts when services go down
- Beautiful dashboard showing service status
- Tracks uptime statistics and response times

### 🚀 Quick Setup
```yaml
version: '3.9'
services:
  uptime-kuma:
    image: louislam/uptime-kuma:latest
    container_name: Uptime-Kuma
    ports:
      - "3001:3001"
    volumes:
      - ./data:/app/data
    environment:
      - TZ=America/Los_Angeles
    restart: on-failure:5
```

### 🔧 Configuration Tips
- **First setup**: Create admin account immediately
- **Monitor types**: HTTP, TCP, Ping, DNS, Docker containers
- **Notifications**: Set up email, Discord, Slack alerts
- **Status pages**: Create public status pages for users

### 💡 Pro Tips
- Monitor your router/modem for internet connectivity
- Set up keyword monitoring for login pages
- Use different check intervals (60s for critical, 300s for others)
- Create notification groups to avoid spam

---

## 2️⃣ Plex - Media Streaming Server

**🟢 Beginner-Friendly | Entertainment Essential**

### 🎯 What It Does
- Stream movies, TV shows, music to any device
- Automatic metadata and artwork fetching
- User management with sharing capabilities
- Mobile apps for iOS/Android

### 🚀 Quick Setup
```yaml
version: '3.9'
services:
  plex:
    image: plexinc/pms-docker:latest
    container_name: Plex
    hostname: plex-server
    ports:
      - "32400:32400"
    environment:
      - TZ=America/Los_Angeles
      - PLEX_CLAIM=claim-xxxxxxxxxxxx  # Get from plex.tv/claim
      - PLEX_UID=1026
      - PLEX_GID=100
    volumes:
      - ./config:/config
      - /volume1/media/movies:/movies:ro
      - /volume1/media/tv:/tv:ro
      - /volume1/media/music:/music:ro
    restart: on-failure:5
```

### 📁 Media Organization
```
/volume1/media/
├── movies/
│   ├── Avatar (2009)/
│   │   └── Avatar (2009).mkv
│   └── Inception (2010)/
│       └── Inception (2010).mkv
├── tv/
│   ├── Breaking Bad/
│   │   ├── Season 01/
│   │   └── Season 02/
│   └── The Office/
└── music/
    ├── Artist Name/
    │   └── Album Name/
    └── Various Artists/
```

### 🔧 Essential Settings
- **Remote Access**: Enable for mobile access
- **Hardware Transcoding**: Enable if you have Intel/NVIDIA GPU
- **Libraries**: Separate libraries for Movies, TV, Music
- **Users**: Create accounts for family members

### 💡 Pro Tips
- Use Plex naming conventions for best metadata
- Enable "Empty trash automatically" 
- Set up Tautulli for usage statistics
- Consider Plex Pass for premium features

---

## 3️⃣ Vaultwarden - Password Manager

**🟡 Intermediate | Security Essential**

### 🎯 What It Does
- Stores all passwords securely encrypted
- Generates strong passwords automatically
- Syncs across all devices (phone, computer, browser)
- Compatible with Bitwarden apps

### 🚀 Quick Setup
```yaml
version: '3.9'
services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: Vaultwarden
    ports:
      - "8012:80"
    volumes:
      - ./data:/data
    environment:
      - WEBSOCKET_ENABLED=true
      - SIGNUPS_ALLOWED=true  # Disable after creating accounts
      - ADMIN_TOKEN=REDACTED_TOKEN
      - DOMAIN=https://vault.yourdomain.com
    restart: on-failure:5
```

### 🔐 Security Setup
1. **Create admin token**: `openssl rand -base64 48`
2. **Disable signups** after creating accounts
3. **Enable 2FA** for all accounts
4. **Set up HTTPS** with reverse proxy
5. **Regular backups** of `/data` directory

### 📱 Client Setup
- **Browser**: Install Bitwarden extension
- **Mobile**: Download Bitwarden app
- **Desktop**: Bitwarden desktop application
- **Server URL**: Point to your Vaultwarden instance

### 💡 Pro Tips
- Use organization vaults for shared passwords
- Set up emergency access for family
- Enable breach monitoring if available
- Regular password audits for weak/reused passwords

---

## 🚀 Getting Started Recommendations

### 🎯 Week 1: Foundation
1. **Uptime Kuma**: Monitor your services
2. **Portainer**: Manage Docker containers
3. **Nginx Proxy Manager**: Set up reverse proxy

### 🎯 Week 2: Core Services
4. **Vaultwarden**: Secure password management
5. **Pi-hole**: Block ads network-wide
6. **Plex/Jellyfin**: Start your media server

### 🎯 Week 3: Productivity
7. **Immich**: Photo management
8. **Paperless-NGX**: Document digitization
9. **Syncthing**: File synchronization

### 🎯 Week 4: Advanced
10. **Grafana + Prometheus**: Advanced monitoring

## 📊 Service Comparison

### 🎬 Media Servers
| Feature | Plex | Jellyfin | Emby |
|---------|------|----------|------|
| **Cost** | Free/Premium | Free | Free/Premium |
| **Ease of Use** | Excellent | Good | Good |
| **Mobile Apps** | Excellent | Good | Good |
| **Hardware Transcoding** | Premium | Free | Premium |
| **Plugins** | Limited | Extensive | Moderate |

### 🔐 Password Managers
| Feature | Vaultwarden | Bitwarden | 1Password |
|---------|-------------|-----------|-----------|
| **Self-hosted** | Yes | No | No |
| **Cost** | Free | Free/Premium | Premium |
| **Features** | Full | Limited/Full | Full |
| **Mobile Apps** | Yes | Yes | Yes |
| **Browser Extensions** | Yes | Yes | Yes |

### 📊 Monitoring Solutions
| Feature | Uptime Kuma | Grafana | Zabbix |
|---------|-------------|---------|--------|
| **Complexity** | Low | Medium | High |
| **Features** | Basic | Advanced | Enterprise |
| **Setup Time** | 10 minutes | 2 hours | 8+ hours |
| **Resource Usage** | Low | Medium | High |

---

## 📋 Next Steps

### 🎯 After Popular Services
- **[20-Service-Categories](20-Service-Categories.md)**: Explore more specialized services
- **[21-Service-Index](21-Service-Index.md)**: Complete list of all available services
- **[30-Deployment-Guide](30-Deployment-Guide.md)**: Learn advanced deployment patterns
- **[50-Ansible-Automation](50-Ansible-Automation.md)**: Automation and scaling

### 🎯 Community Resources
- **r/homelab**: Reddit community for homelab enthusiasts
- **r/selfhosted**: Self-hosting community and discussions
- **Discord servers**: Real-time chat with other homelabbers
- **YouTube channels**: TechnoTim, NetworkChuck, Craft Computing

---

*These popular services form the backbone of most successful homelabs. Start with the ones that solve your immediate needs, then gradually expand your infrastructure as you become more comfortable with the technology.*

## 🔗 Related Documents

- **[00-Homelab-Documentation-Index](00-Homelab-Documentation-Index.md)**: Main documentation index
- **[02-Quick-Start-Guide](02-Quick-Start-Guide.md)**: Deploy your first service
- **[20-Service-Categories](20-Service-Categories.md)**: All service categories
- **[30-Deployment-Guide](30-Deployment-Guide.md)**: Deployment patterns
- **[40-Common-Issues](40-Common-Issues.md)**: Troubleshooting guide