Skip to content

Platform Phases

WeekendBuilder is built in phases, each one adding a distinct capability to the platform.

Phase 1 — Foundation

Server provisioning, Docker installation, firewall rules, SSH hardening, and repository structure. The VPS is ready to run containers but has no public-facing services yet.

Phase 2 — DNS

Domain registration via Porkbun with DNS delegated to Cloudflare. Wildcard A/AAAA records point all subdomains at the VPS IP. The wildcard means new apps work without touching DNS again.

Phase 3 — Routing

Traefik v3 deployed as the reverse proxy gateway. Handles automatic HTTPS via Let’s Encrypt (HTTP challenge), HTTP→HTTPS redirects, secure headers, and gzip compression. All apps route through Traefik by attaching to the web Docker network.

Phase 4 — Traefik Polish

Middleware configuration: secure-headers (HSTS, X-Frame-Options, XSS filter) and gzip defined in infrastructure/traefik/dynamic/middlewares.yml. Applied to all routers.

Phase 5 — Landing Page

The apex domain (weekendbuilder.io) becomes a public landing page served by nginx. Lists platform projects and links to subdomains. No build step — plain HTML served directly from a bind mount.

Phase 6 — Docs Site

docs.weekendbuilder.io deployed as a static Astro Starlight site. Built with Node 22 Alpine, served by nginx:alpine, routed through Traefik like every other app.

Next: Phase 7 — CI/CD

GitHub Actions for automated deploys on push to main. Not yet implemented.