Home β€Ί Quick Start

⚑ Quick Start

Bring up the full Dryad stack from zero. Follow the order β€” it matters.

⚠ Safety FirstConfirm you are on madhatter before running anything. Run hostname β€” it must return madhatter.

Step 1 β€” Verify prerequisites

hostname                                    # must be: madhatter
df -h /mnt/ai_engine                        # AI engine drive space
free -h                                     # RAM headroom (16 GB ceiling)
docker info | grep "Docker Root Dir"        # must be: /mnt/ai_engine/docker

Step 2 β€” Start the stack (ordered)

Order is mandatorydryad-core β†’ dryad-brain β†’ dryad-mcp β†’ dryad-apps β†’ dryad-portal β†’ dryad-tutorials
~/bin/dryad-up.sh                                       # core β†’ brain β†’ mcp β†’ apps
cd ~/GitHub/dryad-portal && docker compose up -d        # portal (3080)
cd ~/dryad-tutorials && docker compose up -d            # learn portal (80β†’Caddy)

Step 3 β€” Start systemd services

systemctl status ollama                     # GPU inference (port 11434)
systemctl --user status opencode           # OpenCode v1.2.24 (port 4096)

Step 4 β€” Verify everything

~/bin/dryad-status

# LiteLLM (auth required since v6.1)
curl http://localhost:4000/v1/models -H "Authorization: Bearer sk-dryad-master" | jq ".data[].id"

# Portal and learn
curl http://localhost:3080/health
curl http://localhost:8888/          # dryad-tutorials local port

# Redis and Qdrant
docker exec dryad-redis redis-cli -a Bongo1102n@t3 ping    # PONG
curl http://localhost:6333/healthz                          # {"title":"qdrant - 200"}

Access URLs (Tailnet only)

ServiceURL
Learn Portal (this site)https://learn.madhatter.modlin.cloud
Dryad Portalhttp://portal.madhatter.modlin.cloud
Open WebUI (chat)https://chat.madhatter.modlin.cloud
OpenCode IDEhttps://opencode.madhatter.modlin.cloud
OpenWorkhttps://openwork.madhatter.modlin.cloud
Portainerhttps://portainer.madhatter.modlin.cloud
Netdatahttps://netdata.madhatter.modlin.cloud
LiteLLM UIhttps://litellm.madhatter.modlin.cloud