slimcore-website/docs/deferred-work.md
Pascal Oelmann 809772ae2f
All checks were successful
Deploy Marketing-Site / Build, Test und Deploy (push) Successful in 1m9s
docs: deferred-work.md — was später noch sauber gemacht werden muss
2026-05-05 02:39:20 +02:00

2.2 KiB

Deferred Work — Marketing-VPS Stack

Stand: 2026-05-05 · Kontext: Pragmatik-vor-Perfektion-Entscheidung beim initialen Deployment. Folgendes ist bewusst zurückgestellt, soll aber vor Live-Schaltung von slimcore.io oder spätestens beim Aufsetzen der zweiten Marken-Site abgearbeitet werden.

Caddyfile (infra/marketing-vps/Caddyfile)

  • Per-Domain Access-Logs (/var/log/caddy/<domain>.log, JSON, rotiert) — essentiell für Debugging und DSGVO-Auskünfte
  • Cache-Control pro Asset-Klasse: /_astro/* und /fonts/* mit max-age=31536000, immutable; HTML mit max-age=300, must-revalidate
  • Permissions-Policy: interest-cohort=() (Souveränitäts-Konsistenz, FLoC-Block)
  • HSTS mit preload + Submission an hstspreload.org
  • Globaler email-Block für Let's-Encrypt Renewal-Notifications

Compose-Stack (infra/marketing-vps/docker-compose.yml)

  • Uptime-Kuma unter status.digiformer.eu (eigener Caddy-Block, basicauth, eigenes Passwort — nicht „demo")
    • DNS-A-Record status.digiformer.eu178.104.215.120 ✓ (am 2026-05-05 von Pascal gesetzt)
  • Healthcheck auf Caddy-Admin-API (http://127.0.0.1:2019/config/)
  • HTTP/3 (443:443/udp Port + experimental_http3 global)
  • Log-Volume + Logrotate — ohne Mount sammelt Caddy intern alles, geht beim Container-Recreate verloren
  • Caddy Admin-API auf 127.0.0.1:2019 (Voraussetzung für Healthcheck)

Workflow (.forgejo/workflows/deploy.yml)

  • Demo-Credentials als Org-Secrets DEMO_USER/DEMO_PASS (nicht im Klartext im Workflow oder Caddyfile)
  • Verifikation curl-t mit Credentials → 200 erwarten, plus grep -q SlimCore auf Body
  • /_astro/*.css-Smoke-Check — bestätigt, dass das jetzige dist/ deployed wurde, nicht das alte
  • Self-adapting beim Live-Switch: wenn DEMO_PASS leer/ungesetzt → Verifikation läuft ohne Auth

Vor Live-Schaltung von slimcore.io

  • basic_auth { … }-Block + X-Robots-Tag-Zeile aus infra/marketing-vps/Caddyfile entfernen, committen, auf marketing-VPS deployen + docker exec marketing-caddy caddy reload
  • Site bei hstspreload.org submitten
  • Sitemap an Google Search Console + Bing Webmaster Tools melden