Files
localgenai/pyinfra/framework/compose/homepage.yml
noisedestroyers 178d7d3c0f Add Homepage dashboard + dual-export OpenCode traces
Homepage as the front door: single page at framework:7575 with one tile
per service, live widgets where the upstream supports it (Ollama loaded
models, container state via docker.sock, etc.), bookmarks for reference
docs. Config files are pyinfra-managed — source of truth lives in
compose/homepage/, sync by editing there and re-running ./run.sh.

OpenCode plugin now dual-exports spans to Phoenix and OpenLIT in
parallel. Phoenix remains the per-trace waterfall view; OpenLIT picks
up the same data for fleet-level metrics. Each destination has its own
batch processor so a hiccup at one doesn't block the other.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 12:00:05 -04:00

29 lines
1.2 KiB
YAML

# Homepage — service launcher + status dashboard for the localgenai stack.
# https://gethomepage.dev
#
# Single tile per service, with live widgets (loaded models, container
# state, request rates) where the upstream supports it. Reads its config
# from /srv/docker/homepage/config; pyinfra ships the initial files there
# and leaves them alone afterwards (edit them directly to add bookmarks,
# tweak the layout, etc).
#
# Bring-up: `docker compose up -d`. UI at http://framework:7575.
services:
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
restart: unless-stopped
ports:
# 7575 picked to avoid the soup of 30xx ports already in use
# (OpenWebUI 3000, OpenLIT 3001, OpenHands 3030).
- "7575:3000"
volumes:
- /srv/docker/homepage/config:/app/config
# Read-only docker socket so homepage can render container status
# (running / stopped, CPU, memory) on each tile.
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
# Required when accessed from a host other than localhost (i.e.
# over Tailscale by hostname). Comma-separated list; * matches all.
HOMEPAGE_ALLOWED_HOSTS: "framework:7575,framework,localhost:7575,localhost,*"