I enjoy tinkering with small technology projects, and I learn a ton from these experiments. I also self-host a number of apps/services from my home as well as various cloud environments. This page describes some of my technical playground.
Everything is connected to my Tailscale↗ tailnet, with a GitOps-managed ACL to allow access as needed. This lets me access and manage systems without really caring if they're local or remote. Tailscale is magic.
The container workloads are (generally) managed with Portainer↗ using configs hosted on my Forgejo instance↗.
On Premise
Proxmox VE 8 Cluster
- 1x Intel NUC 9 Extreme (NUC9i9QNX)↗
- 9th Gen Intel® Core™ i9-9980HK (8 cores @ 2.40GHz)
- 64GB RAM
- 1x 512GB NVMe system drive
- 2x 1TB NVMe drives (ZFS)
- 2x HP Elite Mini 800 G9↗
- 12th Gen Intel® Core™ i7-12700 (8 cores @ 2.10GHz, 4 cores @ 1.60GHz)
- 96GB RAM
- 1x 512GB NVMe system drive
- 1x 4TB NVMe drive (ZFS)
- Unifi USW Flex XG 10GbE Switch↗
- APC Back-UPS Pro 1500VA↗
The Proxmox cluster hosts a number of VMs and LXC containers:
swarm: 3-node Docker Swarm cluster for various on-prem container workloads, served via Tailscale Services↗ / Caddy + Tailscale:- Calibre Web↗ for managing my ebooks (compose.yaml↗)
- Hashicorp Vault↗ for secrets management (compose.yaml↗)
- Linkding↗ bookmark manager serving links.vim.wtf↗ (compose.yaml↗)
- Opengist↗, an open-source alternative to GitHub's Gists (post↗, compose.yaml↗)
- phpIPAM↗, open-source IP address management (compose.yaml↗)
- RIPE Atlas Probe↗ for measuring internet connectivity (compose.yaml↗)
- SilverBullet↗, a web-based personal knowledge management system (post, compose.yaml↗)
- Tailscale Golink↗, a private shortlink service (post, compose.yaml↗)
doc: Ubuntu 22.04 Docker host for running containers outside of Swarm:- Portainer↗ for managing all of my container workloads.
- Prometheus↗ and Grafana↗ for collecting metrics and creating pretty monitoring dashboards (compose.yaml↗)
files: Ubuntu 20.04 file server. Serves (selected) files semi-publicly through Tailscale Funnelhassos: Home Assistant OS↗, manages all my "smart home" stuff (post)salt: Ubuntu 20.04 Salt↗ Master server for configuration management (salt-content↗)unifi: UniFi Network Application to manage the UniFi switches.
Kubernetes Blades Cluster
- 3x Zima Blade 7700↗
- Intel® Celeron® N3450 (4 cores @ 1.10GHz)
- 16GB RAM
- 1x 32GB eMMC
- 1x 1TB SATA SSD
- Unifi USW Flex 2.5G 8-port switch↗
- Software stack:
This triad of cute little single-board computers runs a small microk8s↗ cluster with microceph↗ for storage. It doesn't have much in the way of workloads (yet), but will be a playground for Kubernetes things going forward.
- ConvertX↗ an online file converter (manifest.yaml↗)
- Cyberchef↗, the Cyber Swiss Army Knife (manifest.yaml↗)
- IT-Tools↗ for handy online development-related tools (manifest.yaml↗)
- Omni-Tools↗, a handy collection of web-based utilities (manifest.yaml↗)
- web-check↗, an all-in-one tool for analyzing websites (manifest.yaml↗)
PiAware↗ ADS-B/MLAT Receiver
- Raspberry Pi 4 Model B
- 2x RTL-SDR Blog V3 R860 RTL2832U 1PPM TCXO SMA Dongle↗
- SIGNALPLUS 1090MHz 12dBi 1.1m ADS-B Antenna↗
I like to know what's flying overhead, and I'm also feeding flight data to flightaware.com↗, ADS-B Exchange↗, adsb.fi↗, and adsb.lol↗.
Cloud
hezzy: Ubuntu 24.04 host in Germany:- Bearlytics↗, a lightweight and privacy-friendly web analytics platform (compose.yaml↗)
- Ente↗ to manage my personal photos and videos (compose.yaml↗)
- Forgejo↗ server for git.vim.wtf↗(post)
- gotosocial↗ to host my personal mastodon-compatible activitypub server, vim.wtf↗ (post↗, compose.yaml↗)
- SearXNG↗, a privacy-preserving metasearch engine served at grep.vim.wtf↗ (compose.yaml↗)
- vault-unseal↗ to auto-unseal my on-prem Vault (compose.yaml↗)
finny: Ubuntu 24.04 host in Finland:- Pocket ID↗, an easy-to-use OIDC provider for passkey-based authentication (compose.yaml↗)
- ntfy↗ notification service (post, compose.yaml↗)
- SearXNG↗, a privacy-preserving metasearch engine for personal use (compose.yaml↗)
- tsidp↗, the Tailscale OIDC provider for Tailscale-based SSO within my tailnet (compose.yaml↗)
- Uptime Kuma↗ for monitoring internal services (via Tailscale) (compose.yaml↗)
- chat.vim.wtf↗: Tiny (1vCPU/1GB/30GB) host in Germany providing a chatmail relay↗ for use with Delta Chat↗, a decentralized encrypted messaging app (post, repo↗)