Homepage

A highly customizable homepage (or startpage / application dashboard) with Docker and service API integrations.

🏠 Home: https://gethomepage.dev/
📜 Source: https://github.com/gethomepage/homepage/
Docker integration: https://gethomepage.dev/en/installation/docker/

Dashboard Icons: https://github.com/homarr-labs/dashboard-icons/
Search for Dashboard Icons: https://andrzej-zuralovic.github.io/dashboard-icons-searcher/

name: homepage
services:
  homepage:
    image: ghcr.io/gethomepage/homepage:v1.3.2
    container_name: homepage
    restart: unless-stopped
    # Using Environment Secrets:
    #  https://gethomepage.dev/latest/installation/docker/#using-environment-secrets
    environment:
      HOMEPAGE_VAR_TIMEZONE: ${TIMEZONE}
      HOMEPAGE_VAR_MYDOMAIN: ${MYDOMAIN}
      HOMEPAGE_VAR_CITY: ${LOCATION_CITY:-""}
      HOMEPAGE_VAR_LATITUDE: ${LOCATION_LATITUDE:-""}
      HOMEPAGE_VAR_LONGITUDE: ${LOCATION_LONGITUDE:-""}
      # https://gethomepage.dev/installation/#homepage_allowed_hosts
      HOMEPAGE_ALLOWED_HOSTS: home.${MYDOMAIN}
      # TODO improve security: https://gethomepage.dev/en/installation/docker/
      # PUID: ${PUID}
      # PGID: ${PGID}
    volumes:
      - ./homepage/config:/app/config
      - ./homepage/icons:/app/public/icons
      - ${DOCKER_VOLUMES}/homepage/logs:/app/logs
      # kics-scan ignore-line
      - /var/run/docker.sock:/var/run/docker.sock:ro
    networks:
      - proxy
    labels:
      traefik.enable: true
      traefik.http.routers.homepage.rule: Host(`home.${MYDOMAIN}`)
      traefik.http.routers.homepage.middlewares: localaccess@file
      traefik.http.services.homepage.loadbalancer.server.port: 3000

networks:
  proxy:
    external: true