Meta
Hello World: Building This Site
The first post — how this site was built with Astro, Tailwind CSS, Docker, and Cloudflare Tunnels, all served from my homelab.
#astro
#docker
#cloudflare
#homelab
This is the first post on cube-oakley.com. Let me walk you through how this site is put together.
The Stack
This site is built with:
- Astro — a static site generator that produces plain HTML/CSS/JS
- Tailwind CSS — utility-first CSS framework
- Docker — containerized deployment
- Nginx — serves the static files
- Cloudflare Tunnels — secure tunnel from my homelab to the internet
Why Not WordPress?
WordPress is great, but it’s everywhere. I wanted something I built myself, something that reflects the kind of work I do. Plus, a static site is:
- Fast — no database queries, no server-side rendering
- Secure — there’s nothing to exploit when you’re serving static files
- Simple — easy to containerize, easy to move between systems
The Homelab Angle
The fun part: this site is hosted on my home server rack. Traffic hits Cloudflare, gets routed through an encrypted tunnel to a Docker container running on my Arch Linux server. No ports are open on my firewall.
Here’s a simplified version of the setup:
services:
web:
image: cube-oakley-web
restart: unless-stopped
tunnel:
image: cloudflare/cloudflared
command: tunnel run
restart: unless-stopped
What’s Next
I’ll be writing about:
- My homelab setup in detail
- Projects I’m working on
- AI and tech topics that catch my interest
Stay tuned.