-
Notifications
You must be signed in to change notification settings - Fork 0
Kamal
title: Kamal type: platform created: 2026-05-26 last_updated: 2026-05-26 related: ["radar/platforms/Daytona", "radar/platforms/Windmill", "radar/tools/OrbStack"] sources: ["https://github.com/basecamp/kamal"] radar_quadrant: Platforms radar_ring: Assess radar_position: inner
Basecamp's open-source deployment tool for Dockerised web applications. Deploys to any server with SSH access and Docker installed, with zero-downtime cutover via Traefik. Extracted from Basecamp's own production infrastructure; formerly named MRSK.
Kamal coordinates deployments through a single deploy.yml config file. On deploy, it pulls the new Docker image on each target server, starts the new container, waits for a health check to pass, then stops the old container. Traefik runs as a local load balancer to handle the cutover without dropping requests.
Core capabilities:
- Zero-downtime deploys — health-checked container swap via Traefik; old container kept until new one is healthy
- Multi-server deployments — deploy to a fleet of servers in parallel from a single command
- Accessory services — manages supporting containers (databases, caches, sidekiq) with separate lifecycle commands
-
Secrets management — encrypted
.envfiles committed to the repo; secrets injected at deploy time -
Rollback —
kamal rollback <version>redeploys a previous image tag
Kamal occupies the space between manual Docker management and full Kubernetes. It requires no cluster, no Helm, no cloud vendor — only SSH access and a Docker registry. The trade-off is that it does not handle auto-scaling, pod-level resource limits, or multi-region routing. It suits single-region deployments at moderate scale where operational simplicity outweighs elastic infrastructure needs.
Kamal sits in the Assess ring of the Platforms quadrant, at inner position. First studied via GitHub (2024-09-26). Self-hosted web app deployment is a recurring problem: manual Docker management is error-prone, Kubernetes is operationally heavy for small services. Kamal provides a structured, reproducible deployment path with zero-downtime semantics and no cloud lock-in. Basecamp runs it in production at scale, which validates the operational model. Inner position reflects a clear trial path (single server, one Dockerised app, one kamal deploy) and direct applicability to homelab and small-production deployments. Remaining gate before Trial is a completed zero-downtime deploy to a real server with rollback verified.