A landing page for your services, dashboards, and documents, discovered automatically from sources such as Docker, Kubernetes, and Tailscale.
Getting started · Docs · Demo
Add a source and Compass renders what is exposed in a server-driven UI with source status, tags, metadata, and operator context. Search, filter, debug, and jump into services without maintaining a pile of hand-written cards.
- Docker, Kubernetes, Tailscale, Headscale, static config, and JSON API sources.
- Source health, refresh status, service metadata, panels, tags, and debug views.
- Server-rendered HTML with HTMX, Alpine.js, Tailwind, and daisyUI. No SPA runtime.
Docker source compass.yaml:
organization:
name: Homelab
services:
sources:
- type: docker
name: local# Add the host's docker GID so the non-root container user can read the socket. Alternatively use: tecnativa/docker-socket-proxy
docker run --rm -p 8080:8080 \
--group-add $(getent group docker | cut -d: -f3) \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v $PWD/compass.yaml:/etc/compass/compass.yaml:ro \
adinhodovic/compass:latest \
-c /etc/compass/compass.yamlKubernetes source compass.yaml:
organization:
name: Homelab
services:
sources:
- type: kubernetes
name: cluster # Helm grants in-cluster RBAC for discovery
kubernetes:
namespaces: []helm install compass oci://ghcr.io/adinhodovic/charts/compass -n compass --create-namespace --set-file config=compass.yamlSee Getting started for a minimal config and source examples.
