Homarr Dashboard Setup: Your Homelab's Front Page
Homarr is a clean, modern homelab dashboard that integrates with your services, shows real-time stats, and gives you a single page to launch everything from.
A homelab dashboard solves a specific problem: you have 15 services running, and you’re constantly opening a new tab and typing IP addresses and port numbers. A dashboard puts them all in one place. Click, done.
Homarr is the current best option for this. It’s actively developed, has native integrations with common services (Sonarr, Radarr, qBittorrent, Jellyfin, and more), and looks good without a lot of configuration. It stores its config in a local SQLite database, so there’s no YAML file to maintain.
What Homarr Does
- Displays your services as tiles with icons, URLs, and descriptions
- Shows live stats from integrated services (number of items in Sonarr’s queue, download progress from qBittorrent, active streams in Jellyfin)
- Displays widgets: calendar, weather, system resources, RSS feeds, and more
- Supports multiple boards with different layouts: a main dashboard, a media dashboard, a monitoring dashboard
- Has user accounts with role-based access if multiple people use it
Install
Create a directory for Homarr:
mkdir -p /opt/homarr/{configs,icons,data}
docker-compose.yml:
version: "3.8"
services:
homarr:
image: ghcr.io/ajnart/homarr:latest
container_name: homarr
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./configs:/app/data/configs
- ./icons:/app/public/icons
- ./data:/data
ports:
- "7575:7575"
environment:
- SECRET_ENCRYPTION_KEY=your-random-32-char-key-here
Generate a random encryption key:
openssl rand -hex 32
Replace your-random-32-char-key-here with the output.
Start it:
docker compose up -d
Access at http://your-server-ip:7575.
First-Time Setup
On first load, Homarr prompts you to create an admin account. Do this immediately. Homarr has no authentication by default until you set one up.
After logging in, you land on a blank board. The UI is drag-and-drop. Click the pencil icon to enter edit mode.
Adding Services
In edit mode, click “Add a tile.” You get two options: App or Widget.
App tile:
- Name: what you want displayed
- URL: the address you want the tile to open
- Icon: search by service name (Homarr has a large built-in icon library)
- Integration: optional, for live stats (covered below)
Add tiles for each service in your homelab. Group them by category: media, monitoring, tools, etc.
Service Integrations
Integrations connect Homarr to your services’ APIs to display live data. To set up an integration:
- Add a tile for the service (e.g., Jellyfin)
- Click the tile settings, then “Edit app”
- Under Integrations, add the service type, URL, and API key
Common integrations:
Jellyfin/Emby: Shows active sessions and recently added media. Get an API key from Jellyfin Dashboard > API Keys.
qBittorrent: Shows active downloads and speeds. Enable in qBittorrent’s Web UI settings.
Sonarr/Radarr: Shows upcoming episodes, queued downloads. Get API key from Settings > General.
Pi-hole: Shows DNS stats (queries blocked, % blocked). API key is in Pi-hole’s Settings > API.
Proxmox: Shows node resource usage. Requires API token from Proxmox.
Once integrated, the tiles show live stats below the app name.
Useful Widgets
Beyond app tiles, Homarr has widgets that go anywhere on the board:
System Resources: CPU, RAM, and disk usage of the machine Homarr runs on. Useful for a quick health check without opening Grafana.
Clock: configurable timezone display. Useful if you have services running in different regions.
RSS Feed: pull headlines from any RSS source. Good for a homelab news board.
Weather: shows local weather. Needs a location.
Search: embeds a search bar. Configure it for your preferred search engine or a self-hosted Searxng instance.
Add widgets via the “Add a tile” menu, then “Widget.”
Multiple Boards
Homarr supports multiple named boards. A useful pattern:
- Home: your main landing page with all services
- Media: Jellyfin, Radarr, Sonarr, qBittorrent with integrations
- Monitoring: links to Grafana dashboards, Uptime Kuma, Netdata
Create new boards from the board selector at the top of the page.
Putting It Behind a Reverse Proxy
Homarr works cleanly behind Nginx Proxy Manager or Caddy. Just proxy port 7575.
If you’re using a domain like dash.home.yourdomain.com, set Homarr as your browser’s homepage. Having a clean single-page overview of your homelab is genuinely useful. It replaces the mental overhead of remembering which service runs on which port.
Mobile Access
Homarr works in mobile browsers. For regular mobile access, add it to your phone’s home screen as a PWA. The web app manifest is included.
For remote access when away from home, route Homarr through Tailscale or your reverse proxy with authentication middleware (Authelia or Cloudflare Access).
Import/Export
Homarr’s board config exports to JSON. Back it up periodically:
docker exec homarr cat /app/data/configs/default.json > homarr-backup.json
Or just back up the entire ./configs directory alongside your compose file.
Homarr is one of those setup-once-and-forget tools. Spend 30 minutes arranging your tiles, get the integrations working, and you’ll have a dashboard you actually use.