You don’t need Kubernetes. You probably don’t even need a PaaS.

The pitch

Kamal is a deployment tool from 37signals (the Basecamp/HEY people). It deploys Docker containers to bare metal or VPS servers over SSH. No cluster, no orchestrator, no 200$/month platform fee.

What you get:

  • Zero-downtime deploys. Blue-green deployment with automatic health checks. Push and it’s live — no downtime window, no maintenance page.
  • Works with any server. Got a VPS? You can deploy to it. No vendor lock-in, no proprietary infrastructure.
  • Simple configuration. One YAML file. Define your servers, your Docker image, your environment variables. That’s it.
  • SSL included. Automatic Let’s Encrypt certificates via the built-in proxy. No nginx config to maintain.

What it replaces

BeforeAfter
Heroku (50-500$/mo)Kamal + Hetzner (5-50$/mo)
Manual SSH + scriptskamal deploy
Kubernetes YAML hellOne config file
Platform lock-inAny Linux server

When it fits

  • You’re deploying a web app and don’t need auto-scaling to hundreds of instances
  • You want deploys to be simple and predictable
  • You’re paying too much for Heroku/Render/Fly and want off the cloud treadmill

When it doesn’t

  • You genuinely need auto-scaling across many nodes (you probably don’t yet)
  • Your team already has Kubernetes expertise and infrastructure in place