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>
29 lines
1.2 KiB
YAML
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,*"
|