# uptime-kuma — service uptime monitor on esh-docker-vm. # # Adopted into this repo 2026-08-18. It had been running unmanaged on the # host since 2025 and was only noticed because its homepage label put it in # the wrong group: it was ALSO listed manually in the homepage stack's # services.yaml under Monitoring, so the dashboard rendered two Uptime Kuma # cards — the labelled one in Apps (with the widget) and the manual one in # Monitoring (without). The label is now the single source of truth and the # manual entry is gone. # # ⚠️ The compose is preserved as it ran, not normalised. Two deliberate # deviations from the house conventions, left alone because this commit is # a homepage fix and not a rewrite of a service that has been up for a # year: # - `restart: always` rather than `unless-stopped` (always revives on # daemon start even after a deliberate manual stop) # - no healthcheck block (the image ships its own, which is why # `docker ps` reports healthy) # # The data volume `uptimekuma_uptime-kuma` holds every monitor definition # and all history. Recreating the container is safe; deleting that volume # is not. name: uptimekuma services: uptime-kuma: image: louislam/uptime-kuma:latest container_name: uptime-kuma restart: always ports: - "3001:3001" volumes: - uptime-kuma:/app/data labels: # Monitoring, NOT Apps — this is the group the dashboard's own layout # reserves for Backrest / Beszel / Dozzle / this. See the note above. - homepage.group=Monitoring - homepage.name=Uptime Kuma - homepage.icon=mdi-arrow-up-bold-circle - homepage.description=Service Monitoring (esh) - homepage.href=http://10.0.50.45:3001 - homepage.siteMonitor=http://10.0.50.45:3001 - homepage.widget.type=uptimekuma - homepage.widget.url=http://10.0.50.45:3001 - homepage.widget.slug=nethealth networks: - tnet volumes: uptime-kuma: {} networks: tnet: name: traefik-net external: true