## Summary - Adds a Fly.io reverse proxy (`blumeops-proxy`) that tunnels public traffic to homelab services over Tailscale - First service exposed: `docs.eblu.me` — the Quartz static docs site - Includes Pulumi IaC for Tailscale auth key/ACLs and Gandi DNS CNAME - Adds mise tasks (`fly-deploy`, `fly-setup`, `fly-shutoff`) and Forgejo CI workflow ## Key details - Fly.io Firecracker VMs support TUN devices natively — no userspace networking needed - Tailscale auth key is `preauthorized=True` to avoid device approval hangs on container restarts - nginx caches aggressively for the static site; health check is on the default_server block - ACLs restrict `tag:flyio-proxy` to `tag:k8s` on port 443 only - DNS CNAME deployed and verified: `docs.eblu.me` → `blumeops-proxy.fly.dev` ## Test plan - [x] `curl -sf https://blumeops-proxy.fly.dev/healthz` returns `ok` - [x] `curl -I -H "Host: docs.eblu.me" https://blumeops-proxy.fly.dev/` returns 200 with `X-Cache-Status` - [x] `curl -I https://docs.eblu.me/` returns 200 with valid Let's Encrypt cert - [x] `dig forge.ops.eblu.me` still resolves to 100.98.163.89 (private services unaffected) - [x] Set `FLY_DEPLOY_TOKEN` Forgejo Actions secret for CI auto-deploy 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/120
3.1 KiB
| title | tags | ||
|---|---|---|---|
| Exploring the Docs |
|
Exploring the Documentation
Audiences: All (Owner, AI, Reader, Contributor, Replicator)
This guide explains how the BlumeOps documentation is organized and how to find what you need.
Documentation Structure
The docs follow the Diataxis framework:
| Section | Purpose | When to Use |
|---|---|---|
| **[[tutorials | Tutorials]]** | Learning-oriented |
| **[[reference | Reference]]** | Information-oriented |
| **[[how-to | How-to]]** | Task-oriented |
| **[[explanation | Explanation]]** | Understanding-oriented |
Quick Paths by Audience
For Erich (Owner)
You probably want quick access to operational details:
- how-to guides for common operations (deploy, troubleshoot, update ACLs)
- reference has service URLs, commands, and config locations
- ai-assistance-guide explains how to work effectively with Claude
- Run
mise run zk-docsto prime AI context with key documentation
For Claude/AI Agents
Context for effective assistance:
- Read ai-assistance-guide for operational conventions
- reference has the technical specifics you'll need
- The repo's
CLAUDE.mdhas critical rules (especially the kubectl context requirement)
For External Readers
Understanding what this is:
- explanation covers the "why" behind design decisions
- reference shows what's actually running
- Browse service pages to see specific implementations
For Contributors
Getting started with changes:
- contributing walks through the workflow
- how-to guides for specific tasks (deploy services, add roles)
- reference tells you where things live
For Replicators
Replicators are people who want to build their own similar homelab GitOps setup, using BlumeOps as inspiration.
- replicating-blumeops provides the overview, with linked tutorials that go deep on individual components
- explanation covers architecture and design rationale
- Reference pages show specific configuration choices
Using Wiki Links
Documentation uses [[wiki-links]] for cross-references:
[[service-name]]links to a reference page[[page|Display Text]]customizes the link text
When reading on the web (docs.eblu.me), these render as clickable links. The backlinks panel shows what references each page.
Pre-commit hooks automatically validate that all wiki-links point to existing files and that link targets are unambiguous.
AI Context Priming
The zk-docs mise task concatenates key documentation files for AI context:
mise run zk-docs -- --style=header --color=never --decorations=always
This outputs the AI assistance guide, reference index, how-to index, architecture overview, and tutorials index - providing Claude with essential context for BlumeOps operations.
Related
- tutorials - Parent index of all tutorials
- update-documentation - How to publish doc changes
- review-documentation - Periodic doc review process