Files
esh-pfi-infrastructure/stacks/dockge/compose.yaml
T
vh 5528769211 dockge: parameterize stacks-root path + deploy on corviduo-dev
Made the host-stacks bind-mount path configurable via
DOCKGE_HOST_STACKS_ROOT (default /opt/docker, unchanged for the
existing five hosts). Override on corviduo-dev to /home/vh/docker
because that host's /opt/ is owned by deploy:deploy (Worldtree team)
and vh lacks passwordless sudo for the fleet-standard path — same
reasoning as the beszel + dozzle agent placement earlier today.

Deployed to corviduo-dev. Reachable at http://10.250.50.152:5001
(first probe 200 — Docker's port-mapping route through iptables
worked without firewall changes, unlike beszel's network_mode: host).

Scoped to PFI-managed stacks only (/home/vh/docker/compose/) — does
NOT see /opt/worldtree*/ deployments. Keeps the management boundary
clean: dockge can restart/recreate PFI's beszel+dozzle+itself but
not the Worldtree-team-owned containers.
2026-05-23 21:23:44 -07:00

43 lines
1.5 KiB
YAML

# Dockge — per-host Docker Compose UI (https://dockge.kuma.pet/).
#
# One instance runs on every Docker host so the compose dir is manageable
# from a browser. Each host sets DOCKGE_HOST_LABEL + DOCKGE_HOST_IP in its
# .env so the homepage card points at the right place.
#
# All tunables live in .env — edit that, not this file.
services:
dockge:
image: louislam/dockge:${DOCKGE_VERSION:-latest}
container_name: dockge
restart: unless-stopped
ports:
- "${DOCKGE_PORT:-5001}:5001"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- dockge_data:/app/data
# Bind-mount the host's stacks root at the same path inside the
# container. Default /opt/docker matches the fleet convention;
# corviduo-dev overrides to /home/vh/docker because PFI's standard
# /opt/docker path is sudo-gated by deploy:deploy there and vh
# lacks passwordless sudo. See servers/corviduo-dev/README.md.
- ${DOCKGE_HOST_STACKS_ROOT:-/opt/docker}:${DOCKGE_HOST_STACKS_ROOT:-/opt/docker}
environment:
- DOCKGE_STACKS_DIR=${DOCKGE_HOST_STACKS_ROOT:-/opt/docker}/compose
networks:
- tnet
labels:
- homepage.group=Service Networking
- homepage.name=Dockge (${DOCKGE_HOST_LABEL})
- homepage.icon=sh-dockge.png
- homepage.description=Compose UI on ${DOCKGE_HOST_LABEL}
- homepage.href=http://${DOCKGE_HOST_IP}:${DOCKGE_PORT:-5001}
volumes:
dockge_data:
networks:
tnet:
name: traefik-net
external: true