Skip to content

Homer

Description⚓︎

A dead simple static HOMepage for your servER to keep your services on hand, from a simple yaml configuration file

Warning

I'm using a custom theme by WalkxCode. If you wish not to use it, remove respective section in deploy.sh file

Docker⚓︎

Basic info⚓︎

Basic info with official links

docker-compose.yml⚓︎

YAML
---
version: "3"
services:
  homer:
    image: b4bz/homer:latest
    container_name: homer
    networks:
      - proxy
    labels:
      traefik.enable: true   # Enable Traefik reverse proxy for the Traefik dashboard.
    volumes:
      - /home/$USER/.config/homer:/www/assets
      - "${BAK_CFG_DIR}/homer/config.yml:/www/assets/config.yml"
      - "${BAK_CFG_DIR}/icons:/www/assets/manicons"
      - "${BAK_CFG_DIR}/wallpapers:/www/assets/wallpapers"
    ports:
      - 888:8080
    environment:
      - UID=${PUID}
      - GID=${PGID}
      - TZ=${TZ}
    restart: unless-stopped

networks:
  proxy:    # rename this to your custom docker network.
    external: true

deploy.sh⚓︎

Bash
#!/bin/sh
# Creating directories to hold config files etc
mkdir -p /home/$USER/.config/homer
touch "${BAK_CFG_DIR}"/homer/config.yml
mkdir -p "${BAK_CFG_DIR}"/homer/manicons
# deploying container
docker compose up -d

# DON'T DO THIS IF YOU DON'T WANT CUSTOM THEME
# cloning custom theme for homer
git clone https://github.com/WalkxCode/Homer-Theme.git /home/$USER/Homer-Theme
sudo chmod -R 777 /home/$USER/Homer-Theme

# deleting default config.
sudo chmod -R 777 /home/$USER/.config/homer
find /home/$USER/.config/homer/* ! -name 'manicons' ! -name 'wallpapers' ! -name 'config.yml' -type d,f -exec rm -rf "{}" +

# moving custom theme files to homer dir
mv /home/$USER/Homer-Theme/assets/config.yml /home/$USER/Homer-Theme/assets/og-config.yml
mv /home/$USER/Homer-Theme/assets/* /home/$USER/.config/homer/

# removing the custom theme git dir
rm -rf /home/$USER/Homer-Theme