Update SearXNG, Gluetun, and Valkey to describe the quadlet units instead of compose: searxng sets Network=gluetun.container, the units install to ~/.config/containers/systemd/, and scripts/deploy-searxng-quadlet.sh deploys them. Add a Boot Persistence section to the Stack doc. Correct the Gluetun tunnel check (the :8000 server 404s; verify tun0 instead) and note the pinned 10.89.2.0/24 subnet.
2.5 KiB
Dankclaw Stack
Dankclaw (192.168.0.143) runs the AI, search, and development stack. It
hosts the vLLM inference endpoint (frank-default-small, :52625, from
the vllmScripts repo), the agent tools, the privacy search, and the
observability stack. The llama.cpp endpoint (frank-default-large,
:7770) runs on Dankserver (192.168.0.235) since the 2026-08-17 redo.
graph LR
U[User] --> C[Caddy :80/:443]
C --> O[OpenWebUI]
C --> S[SearXNG]
C --> G[Gitea]
C --> F[ComfyUI]
C --> D[Grafana]
S --> V[Gluetun VPN]
O --> L[llama.cpp dankserver :7770]
O --> H[Hermes]
O --> E[vLLM dankclaw :52625]
Services
| Service | Hostname | Port | Docs |
|---|---|---|---|
| SearXNG | search.dankclaw.local | 8081 | SearXNG |
| ComfyUI | comfyui.dankclaw.local | 8188 | ComfyUI |
| OpenWebUI | chat.dankclaw.local | 3000 | OpenWebUI |
| Hermes | hermes.dankclaw.local | 8090 | Hermes |
| Gitea | gitea.dankclaw.local | 3000 | Gitea |
| Grafana | grafana.dankclaw.local | 3002 | Grafana |
| Prometheus | prometheus.dankclaw.local | 9090 | Prometheus |
| Homepage | dankclaw.local | 80/443 | — |
| frank-default-large (host service, Dankserver) | — | 7770 | vllmScripts |
| frank-default-small (host service) | — | 52625 | vllmScripts |
The last two rows are bare-metal systemd services, not containers. The
vllmScripts repository owns their scripts and knowledge base. Since the
2026-08-17 redo, frank-default-large runs llama.cpp FastMTP on
Dankserver; frank-default-small runs vLLM on Dankclaw.
Boot Persistence
The Gitea trio and the SearXNG trio (gluetun, searxng, valkey) run as quadlet units, so they start at boot. User linger is on. ComfyUI runs as a systemd unit around a bare process. The remaining services in the table are defined in compose.yaml and are not yet boot-persistent.
Deploy the SearXNG trio with scripts/deploy-searxng-quadlet.sh dankclaw. The Gitea units install to ~/.config/containers/systemd/ (see Gitea).
Routing Rules
- SearXNG outbound traffic exits through the Gluetun VPN container.
- Every other service uses the normal LAN route.
- The homepage lists all services with status.
See Also
- index — repository index
- Network Architecture — routing and proxy
- Observability — Grafana, Prometheus, logs
- vllmScripts knowledge base — the model-serving endpoints on this host