Homarr: A Modern, Feature-Rich Self-Hosted Dashboard
Homarr is a modern dashboard for managing and monitoring your self-hosted services. Unlike simpler dashboards that just display links, Homarr integrates directly with your services — showing download progress from your *arr stack, Docker container status, media library stats, and more.
If Homepage is a bookmarks page with widgets, Homarr is closer to a control panel.
Why Homarr?
The self-hosted dashboard space is crowded. Here's what sets Homarr apart:
- Deep service integrations — Native support for Sonarr, Radarr, Lidarr, SABnzbd, qBittorrent, Deluge, Overseerr, Plex, Jellyfin, and dozens more
- Drag-and-drop layout — Configure your dashboard visually, no YAML files
- Docker integration — Start, stop, and restart containers directly from the dashboard
- Multi-user support — Different dashboards for different users
- Weather, calendar, RSS — Built-in widgets beyond service monitoring
- Search — Integrated search bar with configurable search engines
The trade-off: Homarr is heavier than Homepage (~200 MB RAM vs ~50 MB) and the visual editor means configuration isn't easily version-controlled.
Installation
# docker-compose.yml
services:
homarr:
image: ghcr.io/homarr-dev/homarr:latest
container_name: homarr
ports:
- "7575:7575"
volumes:
- homarr_data:/appdata
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- TZ=America/Los_Angeles
restart: unless-stopped
volumes:
homarr_data:
The Docker socket mount is optional but enables container management features. If you only want a dashboard without Docker control, remove that line.
docker compose up -d
Access Homarr at http://your-server:7575. The first launch walks you through creating an admin account.
Core Concepts
Boards
Homarr organizes everything into boards. Each board is a separate dashboard layout. You might have:
- A main board with all services
- A media board focused on Plex/Jellyfin/*arr stack
- A monitoring board with system stats
Each user can have their own default board.
Apps
Apps are links to your services. Each app has:
- Name and URL — Basic link to the service
- Icon — Auto-detected from the Dashboard Icons project or custom upload
- Integration — Optional deep integration (see below)
- Category — Group apps visually on the board
Widgets
Widgets display live data. Built-in widgets include:
- Clock/Weather — Current time and weather conditions
- System resources — CPU, RAM, disk usage
- Docker — Container status and controls
- Calendar — Upcoming events from Sonarr/Radarr/Lidarr
- RSS — Feed reader widget
- Iframe — Embed any web page
- Media requests — Overseerr/Jellyseerr pending requests
- Download clients — SABnzbd/qBittorrent progress
Service Integrations
Media Stack
Sonarr → Shows upcoming episodes, missing episodes, queue status
Radarr → Movie collection stats, upcoming releases
Lidarr → Music library overview
Jellyfin/Plex → Currently playing, library stats, recent additions
Overseerr → Pending media requests
Each integration requires entering the service URL and API key. Homarr's settings UI walks you through this.
Download Clients
qBittorrent → Active downloads, speeds, queue
SABnzbd → Download progress, queue management
Deluge → Torrent status
Transmission → Download overview
Infrastructure
Proxmox → VM/container status
Pi-hole → Queries blocked, top clients
AdGuard Home → Query stats, filtering status
Portainer → Container management
Configuration Tips
Organize with Categories
Group related services:
- Media — Plex, Jellyfin, Sonarr, Radarr
- Infrastructure — Proxmox, Portainer, Traefik
- Productivity — Nextcloud, Bookstack, Vikunja
- Monitoring — Grafana, Uptime Kuma, NetData
Use the Search Bar
Configure Homarr's search to use your preferred engine. You can also add custom search providers — useful for searching your wiki or documentation.
Enable Ping
Homarr can ping your services and show their status with a colored indicator. This gives you a quick "is everything running" overview without a dedicated uptime monitor.
Docker Socket Proxy
Instead of mounting the Docker socket directly (security risk), use a socket proxy:
services:
dockerproxy:
image: ghcr.io/tecnativa/docker-socket-proxy:latest
environment:
- CONTAINERS=1
- POST=0
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- docker-proxy
homarr:
image: ghcr.io/homarr-dev/homarr:latest
environment:
- DOCKER_HOST=tcp://dockerproxy:2375
depends_on:
- dockerproxy
networks:
- docker-proxy
- default
networks:
docker-proxy:
This restricts what Homarr can do with Docker — read-only access to container info without the ability to execute commands.
Homarr vs Homepage vs Heimdall
| Feature | Homarr | Homepage | Heimdall |
|---|---|---|---|
| Configuration | Visual editor | YAML files | Web UI |
| Service integrations | 50+ native | 100+ via widgets | Basic links |
| Docker management | Yes | No | No |
| Multi-user | Yes | No | No |
| Memory usage | ~200 MB | ~50 MB | ~100 MB |
| Customization | Drag-and-drop | Full CSS control | Theme-based |
| Search | Built-in | No | No |
| Mobile friendly | Yes | Yes | Yes |
| Version control | Difficult | Easy (YAML) | Difficult |
Choose Homarr When
- You want a visual dashboard builder without editing config files
- You need Docker container management from the dashboard
- You run a media stack and want deep *arr integration
- Multiple family members need their own dashboard view
Choose Homepage When
- You want a lightweight, fast dashboard
- You prefer YAML configuration that's easy to version control
- You need maximum widget variety
- You want a clean, minimal aesthetic
Choose Heimdall When
- You just need organized links to services
- You want a simple setup with minimal configuration
- You don't need service integrations or live data
Backup and Migration
Homarr stores all configuration in its data volume. To back up:
docker compose stop homarr
tar -czf homarr-backup.tar.gz /path/to/homarr_data
docker compose start homarr
To migrate to a new server, copy the backup and extract it to the new data volume location.
Verdict
Homarr fills a specific niche: it's the best self-hosted dashboard for people who want a visual control panel, not just a bookmarks page. The drag-and-drop editor makes it accessible to non-technical users, and the service integrations make it genuinely useful beyond link organization.
If you're already happy with Homepage's YAML-based approach, there's no compelling reason to switch. But if you've been putting off setting up a dashboard because you don't want to write config files, Homarr is worth a look. The Docker container management alone makes it a step above a simple link page.