Configuration for Dockhand
  • Makefile 100%
Find a file
2026-07-15 01:49:47 -04:00
nginx/snippets initial commit 2026-07-15 01:49:47 -04:00
.env.example initial commit 2026-07-15 01:49:47 -04:00
.gitignore initial commit 2026-07-15 01:49:47 -04:00
compose.yml initial commit 2026-07-15 01:49:47 -04:00
Makefile initial commit 2026-07-15 01:49:47 -04:00
nginx.conf initial commit 2026-07-15 01:49:47 -04:00
README.md initial commit 2026-07-15 01:49:47 -04:00

Dockhand

Podman/Docker management UI for the Arcane Demesne homelab. Edge nginx publishes 8088; public hostname dockhand.arcanedemesne.com.

Socket: rootless Podman (/run/user/1000/podman/podman.sock). Enable Dockhand authentication (and prefer MFA) before any tunnel exposure. Cloudflare Access is a strong second gate.

Bootstrap

cp .env.example .env
podman network create gateway-hub   # once, if missing
make up

Reload hub after first start (or after Gateway nginx changes):

make proxy-reload

Ports

Surface Host Container
Edge nginx 8088 dockhand-proxy:80
App dockhand:3000

Public hostname: dockhand.arcanedemesne.com → Gateway → dockhand-proxy.

Tunnel: add DNS + Cloudflare ingress for dockhand.arcanedemesne.comhttp://127.0.0.1:8080.

Do not publish 4000:3000 on the host — edge-only.

Data

./data holds Dockhand DB + encryption key. Keep it out of git (see .gitignore). Backup the encryption key; lose it and encrypted secrets are gone.

Health

No dedicated public /livez. HomeLab probes the site root (login redirect counts as online).

Makefile

Target Action
make up Start stack
make down Stop stack
make proxy-reload Reload dockhand-proxy + gateway-proxy nginx