All apps · 0 apps
homer
Docker app from A75G's Repository
Overview
Readme
View on GitHub
Homer
A dead simple static HOMepage for your servER to keep your services on hand, from a simple yaml configuration file.
Demo • Docker Hub • Get started
Highlights
- ⚡️ Lightweight & Fast
- 🥱 Low / No maintenance
- 📄 Simple yaml file configuration
- ➕ Installable (pwa)
- 🧠 Smart cards
- 🔍️ Fuzzy search
- 📂 Multi pages & item grouping
- 🎨 Theme customization
- ⌨️ keyboard shortcuts:
- / Start searching.
- Escape Stop searching.
- Enter Open the first matching result (respects the bookmark's
_targetproperty). - Alt (or Option) + Enter Open the first matching result in a new tab.
Table of Contents
- Getting started
- Kubernetes Installation
- Configuration
- Theming
- Smart cards
- Tips & tricks
- Development
- Troubleshooting
Get started
Homer is a full static html/js dashboard, based on a simple yaml configuration file. See documentation for information about the configuration (assets/config.yml) options.
It's meant to be served by an HTTP server, it will not work if you open the index.html directly over file:// protocol.
Using docker
The configuration directory is bind mounted to make your dashboard easy to maintain.
Start the container with docker run
# Make sure your local config directory exists
docker run -d \
--name homer \
-p 8080:8080 \
--mount type=bind,source="/path/to/config/dir",target=/www/assets \
--restart=unless-stopped \
b4bz/homer:latest
[!NOTE]
The container will run using a user uid and gid 1000 by default, add--user <your-UID>:<your-GID>to the docker command to adjust it if necessary. Make sure this match the permissions of your assets directory.
or docker-compose
services:
homer:
image: b4bz/homer
container_name: homer
volumes:
- /path/to/config/dir:/www/assets # Make sure your local config directory exists
ports:
- 8080:8080
user: 1000:1000 # default
environment:
- INIT_ASSETS=1 # default, requires the config directory to be writable for the container user (see user option)
restart: unless-stopped
Environment variables:
INIT_ASSETS(default:1) Install example configuration file & assets (favicons, ...) to help you get started.SUBFOLDER(default:null) If you would like to host Homer in a subfolder, (ex: http://my-domain/homer), set this to the subfolder path (ex/homer).PORT(default:8080) If you would like to change internal port of Homer from default8080to your port choice.IPV6_DISABLE(default: 0) Set to1to disable listening on IPv6.
Using the release tarball (prebuilt, ready to use)
Download and extract the latest release (homer.zip) from the release page, rename the assets/config.yml.dist file to assets/config.yml, and put it behind a web server.
wget https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip
unzip homer.zip -d homer
cd homer
cp assets/config.yml.dist assets/config.yml
pnpx http-server # or python -m http.server 8010 or any web server.
Build manually
pnpm install
pnpm build
Then your dashboard is ready to use in the /dist directory.
Install Homer on Unraid in a few clicks.
Find Homer in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Categories
Download Statistics
Total Downloads Over Time
Related apps
Explore more like this
Explore allLinks
Details
b4bz/homer:latestRuntime arguments
- Web UI
http://[IP]:[PORT:8080]- Network
bridge- Shell
sh- Privileged
- false
- Extra Params
--user 99:100
Template configuration
Container Port: 8080
- Target
- 8080
- Value
- 8080
Container Path: /www/assets
- Target
- /www/assets
- Value
- /mnt/user/appdata/homer/assets/