diff --git a/docs/unraid-claude.md b/docs/unraid-claude.md new file mode 100644 index 0000000..53d409d --- /dev/null +++ b/docs/unraid-claude.md @@ -0,0 +1,171 @@ +# Claude Code - Unraid Server Context + +## Claude Installation + +| Item | Path | +|------|------| +| Claude binary | `/root/.local/bin/claude` | +| Claude data | `/mnt/user/appdata/claude-code/` | +| Config | `~/.claude/` | + +**Run Claude:** `claude` or `/root/.local/bin/claude` + +--- + +## Infrastructure Documentation + +**Repository:** https://git.xtrm-lab.org/jazzymc/infrastructure + +**Local clone:** `/tmp/infrastructure` + +Always sync before making changes: +```bash +cd /tmp && \ + ([ -d infrastructure ] && cd infrastructure && git pull || \ + git clone "https://jazzymc:zRuHTu%5D7Q3LC%2Bq%3F@git.xtrm-lab.org/jazzymc/infrastructure.git") +``` + +### Documentation Structure +``` +/tmp/infrastructure/docs/ +├── 00-CURRENT-STATE.md # Current network/infrastructure state +├── 01-PHASE1-DNS-PORTABILITY.md # DNS portability plan +├── 02-PHASE2-FOSSORIAL-STACK.md # Fossorial stack setup +├── 03-PHASE3-AUTHENTIK-ZEROTRUST.md # Authentik zero-trust config +├── 04-PHASE4-REMOTE-GAMING.md # Remote gaming setup +├── 05-PHASE5-RUSTDESK.md # RustDesk deployment +├── 06-PHASE6-PORTAINER-MANAGEMENT.md # Portainer setup +├── 07-CHANGELOG.md # Change history +├── 08-PHASE7-GITEA-GITOPS.md # Gitea & Woodpecker CI +└── unraid-claude.md # This file +``` + +--- + +## Key Unraid Paths + +| Item | Path | +|------|------| +| Docker appdata | `/mnt/user/appdata/` | +| Docker templates | `/boot/config/plugins/dockerMan/templates/` | +| FolderView2 config | `/boot/config/plugins/folder.view2/docker.json` | +| Flash drive (persistent) | `/boot/config/` | +| User shares | `/mnt/user/` | +| Disk shares | `/mnt/disk[1-n]/` | +| Cache | `/mnt/cache/` | + +--- + +## Network Configuration + +| Device | IP | Role | +|--------|-----|------| +| MikroTik Router | 192.168.31.1 | Gateway, primary DNS | +| Unraid Server | 192.168.31.2 | Docker host | +| Pi-hole (Unraid) | 192.168.31.4 | Secondary DNS | +| Unbound (Unraid) | 192.168.31.5 | Recursive resolver | +| Tailscale IP | 100.100.208.70 | Remote access | + +**SSH to MikroTik:** +```bash +ssh -i /root/.ssh/mikrotik_key -p 2222 unraid@192.168.31.1 +``` + +--- + +## Docker Commands + +### Quick Status +```bash +docker ps -a --format table {{.Names}}t{{.Status}} | sort +``` + +### Container Logs +```bash +docker logs --tail 100 -f +``` + +### Recreate with Labels (Unraid) +Always include these labels for Unraid integration: +```bash +--label net.unraid.docker.managed=dockerman +--label net.unraid.docker.icon=ICON_URL_HERE +--label net.unraid.docker.webui=WEBUI_URL_HERE +``` + +**Icon Collection:** [Dazzle Line Icons](https://www.svgrepo.com/collection/dazzle-line-icons/) + +--- + +## Documentation Update Routine + +After any infrastructure change: + +1. **Pull latest:** `cd /tmp/infrastructure && git pull` +2. **Update docs:** Edit relevant files in `docs/` +3. **Update changelog:** Add entry to `docs/07-CHANGELOG.md` +4. **Commit & push:** + ```bash + cd /tmp/infrastructure + git add docs/ + git commit -m "Description of changes" + git push + ``` + +### Changelog Format +```markdown +## YYYY-MM-DD +- [PHASE X] Task description - COMPLETED/FIXED/ISSUE +- [SERVICE] service-name: status change or config change +- [DOCS] Documentation updates +- [UNRAID] Unraid-specific changes +``` + +--- + +## Git Credentials + +- **Username:** jazzymc +- **Repo URL (with auth):** `https://jazzymc:zRuHTu%5D7Q3LC%2Bq%3F@git.xtrm-lab.org/jazzymc/infrastructure.git` + +--- + +## Services Quick Reference + +### GitOps +| Service | URL | +|---------|-----| +| Gitea | https://git.xtrm-lab.org | +| Woodpecker CI | https://ci.xtrm-lab.org | + +### Core Services +| Service | URL | +|---------|-----| +| Traefik | https://traefik.xtrm-lab.org | +| Authentik | https://auth.xtrm-lab.org | +| Portainer | http://100.100.208.70:9002 (Tailscale) | +| Vaultwarden | https://vault.xtrm-lab.org | +| Home Assistant | https://ha.xtrm-lab.org | + +### Monitoring +| Service | URL | +|---------|-----| +| Uptime Kuma | http://192.168.31.2:3001 | +| NetAlertX | https://netalert.xtrm-lab.org | + +--- + +## FolderView2 Categories + +| Category | Containers | +|----------|------------| +| Infrastructure | traefik, unbound, pihole, DoH-Server, stunnel-dot, pangolin, dockersocket, nebula-sync | +| Security | authentik, authentik-worker, vaultwarden | +| Monitoring | UptimeKuma, Uptime-Kuma-API, AutoKuma, NetAlertX, speedtest-tracker | +| DevOps | gitea, woodpecker-server, woodpecker-agent, postgresql17, Redis, pgAdmin4 | +| Media | plex, Libation, transmission | +| Storage/Backup | rustfs, UrBackup, TimeMachine, Nextcloud | +| Productivity | actual-budget, n8n, karakeep, homarr | +| Smart Home | HomeAssistant_inabox | +| Remote Access | rustdesk-hbbs, rustdesk-hbbr | +| Management | portainer, unimus |