Documentation Site Hosting
Current State
| Item | Status |
|---|---|
Build system |
Complete ( |
Local preview |
|
GitHub Pages |
Workflow exists, blocked by private repo tier |
Production hosting |
Not deployed |
Requirements
-
Private access (not public internet)
-
Custom domain:
docs.domusdigitalis.dev -
TLS certificate (Let’s Encrypt or Vault-issued)
-
Auto-deploy on git push (nice to have)
Options
Option 1: Cloudflare Pages (Interim)
Pros:
-
Free tier supports private repos
-
Auto-deploy from GitHub
-
Global CDN
-
Easy setup
Cons:
-
External dependency
-
Data leaves network
Setup:
-
Connect Cloudflare to GitHub repo
-
Build command:
npm install && npx antora antora-playbook-local.yml -
Output directory:
build/site -
Add custom domain
Option 2: Self-Hosted nginx (Target)
Pros:
-
Full control
-
No external dependencies
-
Internal network only
-
Integrates with existing infrastructure
Cons:
-
Requires VM/container
-
Manual or scripted deploys
Architecture:
domus-docs repo
↓ (git push)
CI runner (gitea-01 or dedicated)
↓ (build)
nginx VM/container
↓ (serves)
https://docs.domusdigitalis.dev
Candidate hosts:
-
kvm-01- existing hypervisor, add nginx container -
New lightweight VM - dedicated docs server
-
nas-01- if web serving available
Implementation Plan
Local Development
Anywhere with Node.js installed:
# Clone all repos
git clone git@github.com:EvanusModestus/domus-docs.git
git clone git@github.com:EvanusModestus/domus-infra-ops.git
git clone git@github.com:EvanusModestus/domus-ise-linux.git
# Update local playbook paths if needed
vim domus-docs/antora-playbook-local.yml
# Build and serve
cd domus-docs
make serve
# Open http://localhost:8000
Dependencies:
-
Node.js 18+
-
npx
-
d2 (optional, for diagram rendering)