feat: make SITE_URL and SITE_DOMAIN dynamic via .env and docker compose

- Create .env and .env.example with SITE_DOMAIN=riverrooks.dev and SITE_URL=https://riverrooks.dev
- Migrate src/_data/site.json to src/_data/site.js reading environment variables dynamically
- Update subdomains across Forgejo, CyberChef, Stirling PDF, and Uptime Kuma to inherit site.domain
- Update docker-compose.yml and Dockerfile to accept dynamic SITE_URL and SITE_DOMAIN build args
- Add .env to .gitignore
This commit is contained in:
venus
2026-09-13 01:10:20 -05:00
parent b13a50ccee
commit 1491d3fa5c
8 changed files with 130 additions and 81 deletions
+11 -33
View File
@@ -20,7 +20,7 @@ title: "River Rooks | Homelab Gateway"
<div class="hero-directive-box">
<strong>PRIMARY DESTINATIONS:</strong>
<a href="/dispatches/" style="color: var(--accent-cyan); text-decoration: none; margin-left: 8px;">[1] Technical Blog ({{ collections.posts.length }} Articles)</a> &bull;
<a href="https://git.rooks.dev" target="_blank" rel="noopener noreferrer" style="color: inherit; text-decoration: none;">[2] Forgejo Git Repos</a> &bull;
<a href="https://git.{{ site.domain }}" target="_blank" rel="noopener noreferrer" style="color: inherit; text-decoration: none;">[2] Forgejo Git Repos</a> &bull;
<span>[3] Public Tools</span> &bull;
<span>[4] Cluster Telemetry</span>
</div>
@@ -70,41 +70,19 @@ title: "River Rooks | Homelab Gateway"
<span class="status-indicator"></span>
// HOMELAB SERVICES ROUTER
</div>
<span class="tile-meta">4 PUBLIC TOOLS</span>
<span class="tile-meta">{{ site.services.length }} PUBLIC TOOLS</span>
</header>
<div class="services-mini-grid">
<a href="https://git.rooks.dev" target="_blank" rel="noopener noreferrer" class="service-tile-item">
<div>
<div class="service-item-title">Forgejo Git</div>
<div class="service-item-tag">git.rooks.dev:2222</div>
</div>
<p class="service-item-desc">Self-hosted code repositories &amp; dotfiles.</p>
</a>
<a href="https://chef.rooks.dev" target="_blank" rel="noopener noreferrer" class="service-tile-item">
<div>
<div class="service-item-title">CyberChef</div>
<div class="service-item-tag">chef.rooks.dev:443</div>
</div>
<p class="service-item-desc">Hex decoding, cryptography &amp; forensics.</p>
</a>
<a href="https://pdf.rooks.dev" target="_blank" rel="noopener noreferrer" class="service-tile-item">
<div>
<div class="service-item-title">Stirling PDF</div>
<div class="service-item-tag">pdf.rooks.dev:443</div>
</div>
<p class="service-item-desc">Private document OCR and manipulation.</p>
</a>
<a href="https://status.rooks.dev" target="_blank" rel="noopener noreferrer" class="service-tile-item">
<div>
<div class="service-item-title">Uptime Kuma</div>
<div class="service-item-tag">status.rooks.dev:443</div>
</div>
<p class="service-item-desc">High-frequency ping &amp; latency monitors.</p>
</a>
{% for svc in site.services %}
<a href="{{ svc.url }}" target="_blank" rel="noopener noreferrer" class="service-tile-item">
<div>
<div class="service-item-title">{{ svc.name }}</div>
<div class="service-item-tag">{{ svc.tag }}</div>
</div>
<p class="service-item-desc">{{ svc.desc }}</p>
</a>
{% endfor %}
</div>
</section>