Unraid-Home

Unraid-Home

Docker app from Energen's Repository

Overview

Self-populating homepage for your Unraid server. Scans Docker for containers and shows each one as a tile with its WebUI link, icon and status. Edit mode (from your home network) lets you rename, regroup, pin and hide tiles, add links and pages, and pick themes. Optional: login with authenticator sign-in, alerts (ntfy, Gotify, Discord, webhook, email), uptime and update badges, server stats, and automation for Nginx Proxy Manager and Cloudflare Tunnel so your apps get internet addresses automatically. All settings are optional. Built entirely by AI (Claude, by Anthropic). Features are tested, but not every situation has been, so do your own due diligence before exposing it to the internet: keep the login on, use a strong password and 2FA, and review your Cloudflare, proxy and firewall settings. Use at your own risk.

Download Statistics

609
Total Downloads

Related apps

Details

Repository
ghcr.io/rcodehub/unraid-home:latest
Last Updated2026-10-18
First Seen2026-10-18

Runtime arguments

Web UI
http://[IP]:[PORT:8080]
Network
bridge
Shell
bash
Privileged
false

Template configuration

WebUI PortPorttcp

Port the homepage is served on

Target
8080
Default
8484
Value
8484
Docker socketPathro

Used to discover containers (and, only if you turn on Container controls, to start/stop/restart them). Note: the read-only flag does not limit what the Docker API allows.

Target
/var/run/docker.sock
Default
/var/run/docker.sock
Value
/var/run/docker.sock
Unraid templatesPathro

Optional. Lets the hover summaries use each app's Overview text from its Unraid template. Read-only; only the name, repository, overview and category are read.

Target
/templates
Default
/boot/config/plugins/dockerMan/templates-user
Value
/boot/config/plugins/dockerMan/templates-user
ConfigPathrw

Stores your tile overrides and custom links

Target
/config
Default
/mnt/user/appdata/unraid-home
Value
/mnt/user/appdata/unraid-home
Update status filePathro

Optional. Lets tiles show an Update badge for containers Unraid says are out of date. Read-only.

Target
/unraid-update-status.json
Default
/var/lib/docker/unraid-update-status.json
Value
/var/lib/docker/unraid-update-status.json
Disk stats: arrayPathro

Optional. Read-only. Lets the stats strip show array usage.

Target
/mnt/user
Default
/mnt/user
Value
/mnt/user
Disk stats: cachePathro

Optional. Read-only. Lets the stats strip show cache usage.

Target
/mnt/cache
Default
/mnt/cache
Value
/mnt/cache
Page titleVariable

Heading shown at the top of the page

Target
TITLE
Default
Server Home
Value
Server Home
Server addressVariable

Optional. IP or hostname used in app links. Leave blank to use whatever address you opened the homepage with.

Target
HOST_IP
Show stopped containersVariable

Show stopped containers (dimmed)

Target
SHOW_STOPPED
Default
true|false
Value
true
Only containers with a WebUIVariable

true = hide containers that have no WebUI set in their Unraid template

Target
ONLY_WITH_WEBUI
Default
false|true
Value
false
Show Unraid linkVariable

Add a tile for the Unraid dashboard itself

Target
SHOW_UNRAID_LINK
Default
true|false
Value
true
Open in new tabVariable

Open apps in a new browser tab

Target
OPEN_IN_NEW_TAB
Default
true|false
Value
true
Read-onlyVariable

true = hide the Edit button and block changes

Target
READ_ONLY
Default
false|true
Value
false
PasswordVariable

Login password (12+ characters). Leave blank to have one generated on first start; it is printed once in this container's log and stored only as a salted hash.

Target
PASSWORD
Remote domainVariable

Optional. Your main domain (e.g. example.com). Every app with a web UI then gets https://container-name.example.com as its Remote URL automatically. Can also be set on the page in Edit mode.

Target
REMOTE_DOMAIN
Uptime checksVariable

Check that each app's Remote URL answers over the internet and show a status dot on its tile.

Target
UPTIME_CHECKS
Default
true|false
Value
true
Stats stripVariable

Show CPU, memory, disk and uptime at the top of the page.

Target
SHOW_STATS
Default
true|false
Value
true
Alerts: ntfy URLVariable

Optional. Full ntfy topic address (e.g. https://ntfy.sh/my-secret-topic) for alerts.

Target
NOTIFY_NTFY_URL
Alerts: Gotify URLVariable

Optional. Gotify server address. Also set the Gotify token.

Target
NOTIFY_GOTIFY_URL
Alerts: Gotify tokenVariable

Optional. Gotify app token.

Target
NOTIFY_GOTIFY_TOKEN
Alerts: Discord webhookVariable

Optional. Discord webhook address for alerts.

Target
NOTIFY_DISCORD_WEBHOOK
Alerts: generic webhookVariable

Optional. Any address that accepts a JSON POST.

Target
NOTIFY_WEBHOOK_URL
Email: SMTP serverVariable

Optional. Mail server for email alerts, e.g. smtp.gmail.com (Gmail needs an app password)

Target
NOTIFY_SMTP_HOST
Default
smtp.gmail.com
Email: portVariable

Optional. 587 (STARTTLS, default), 465 (TLS) or 25 (plain relay)

Target
NOTIFY_SMTP_PORT
Default
587
Email: userVariable

Optional. SMTP login (usually your email address)

Target
NOTIFY_SMTP_USER
Email: passwordVariable

Optional. SMTP password. Gmail (and most providers with 2-step verification) require an app-specific password, not your normal password.

Target
NOTIFY_SMTP_PASSWORD
Email: fromVariable

Optional. Sender address (defaults to the SMTP user)

Target
NOTIFY_EMAIL_FROM
Email: toVariable

Optional. Who gets alerts; comma-separated addresses

Target
NOTIFY_EMAIL_TO
NPM addressVariable

Optional. Nginx Proxy Manager admin address, e.g. http://192.168.xxx.xxx:7818. Lets Edit mode create proxy hosts for your apps.

Target
NPM_URL
NPM userVariable

Optional. An Nginx Proxy Manager user (email) with permission to manage Proxy Hosts. Use a separate user without two-factor login.

Target
NPM_USER
NPM passwordVariable

Optional. That user's password.

Target
NPM_PASSWORD
NPM forward addressVariable

Optional. Address Nginx Proxy Manager should forward to (your Unraid IP). Blank = the host in NPM address.

Target
NPM_FORWARD_HOST
NPM automatic syncVariable

true = every few minutes, create proxy hosts for new apps automatically (never edits or deletes existing ones).

Target
NPM_AUTO_SYNC
Default
false|true
Value
false
Cloudflare API tokenVariable

Optional. Token limited to this zone's DNS edit and the account's Tunnel edit (and Access edit if you use it). See the README.

Target
CLOUDFLARE_API_TOKEN
Cloudflare account IDVariable

Optional. Your Cloudflare account ID.

Target
CLOUDFLARE_ACCOUNT_ID
Cloudflare tunnel IDVariable

Optional. The ID of your Cloudflare Tunnel.

Target
CLOUDFLARE_TUNNEL_ID
Cloudflare Access emailsVariable

Optional. Comma-separated emails allowed through a Cloudflare Access login for the whole wildcard. Leave blank to skip Access.

Target
CLOUDFLARE_ACCESS_EMAILS
Remote edits blockedVariable

true = editing is only possible from your home network, not through a tunnel or reverse proxy

Target
REMOTE_READ_ONLY
Default
true|false
Value
true
Allowed countriesVariable

Optional. Comma-separated 2-letter country codes (e.g. US,CA). Only these can reach the page from the internet. Needs Cloudflare (it supplies the country).

Target
GEO_ALLOW
Default
US
Blocked countriesVariable

Optional. Comma-separated country codes to refuse (e.g. CN,RU). Ignored if Allowed countries is set.

Target
GEO_BLOCK
Allowed host namesVariable

Optional. Comma-separated host names the page may be opened by (e.g. home.example.com,192.168.1.10). Anything else is refused.

Target
ALLOWED_HOSTS
Login-free networksVariable

Optional. Comma-separated addresses/CIDRs on your LAN that skip the login (e.g. 192.168.1.0/24). Never applies to tunnel/proxy traffic.

Target
TRUSTED_NETS
Login requiredVariable

Turn the login off only if something else in front already protects the page

Target
AUTH
Default
on|off
Value
on
Container controlsVariable

true = show start / stop / restart buttons on tiles when you are on your home network. Needs Docker API write access (a socket proxy must allow POST and start/stop/restart). Off by default.

Target
DOCKER_CONTROLS
Default
false|true
Value
false