Infrastructure, services, and resources needed for the Manchester Football Court Booking Platform
Recommended single-VPS setup for MVP launch. Containerized for easy future migration.
| Software | Purpose | Status |
|---|---|---|
| Ubuntu Server 24.04 | Operating System | Required |
| Docker + Docker Compose | Containerization | Required |
| Nginx | Reverse proxy, SSL termination | Required |
| Node.js (LTS) | Backend API runtime | Required |
| PostgreSQL | Primary database | Required |
| Redis | Caching, slot holds, sessions | Recommended |
| PM2 | Process manager | Required |
| Certbot | SSL certificate management | Required |
Naked VPS means full security responsibility. These are mandatory before launch.
All third-party services are paid directly by the client. Development partner handles technical integration only.
| Subdomain | Points To | Purpose |
|---|---|---|
| api.domain.com | VPS IP | Backend API |
| admin.domain.com | VPS IP | Admin panel |
DNS managed via Cloudflare (strongly recommended for DDoS protection and caching).
If the VPS crashes, everything goes down. Mitigation: automated daily backups, monitoring with Uptime Kuma, documented recovery procedure.
High traffic requires manual VPS upgrade. Mitigation: containerized architecture allows easy migration to cloud with auto-scaling when needed.
Backups must be configured manually. Mitigation: automated pg_dump cron job to external object storage (e.g., Backblaze B2).
No cloud-layer protection. Mitigation: UFW firewall, Fail2Ban, SSH hardening, Cloudflare proxy, regular security updates.
The biggest technical challenge — double-booking prevention. Mitigation: DB UNIQUE constraint + atomic slot hold lock (belt + suspenders approach).
For MVP: Yes, use naked VPS. But design so migration is easy later.