2025-08-01
Launch Notes: Building Our Minecraft Hosting MVP
DevlogInfraStripe

We’ve been busy: Docker orchestration with Dockerode, experiments with Traefik for TCP/UDP, Cloudflare SRV records, and a clean Fastify API. This post covers the decisions we made and why.
Key milestones
- Stripe subscriptions + webhooks (checkout, trial, proration choices)
- Fastify + Dockerode container manager with per-server volumes
- Traefik vs direct SRV—what we shipped and why
The stack
- API: Fastify (TypeScript), productized endpoints for start/stop/stats/logs
- Containers:
itzg/minecraft-server
(Java),itzg/minecraft-bedrock-server
(Bedrock) - Provisioning: Dockerode createContainer + PortBindings + bind-mounted
/data
- DNS: Cloudflare API for A + SRV per server (no wildcard proxies)
- Payments: Stripe Checkout + webhooks (invoice.paid, subscription.updated)
Next up: autoscaling policies, richer metrics, and more locations.