Kamal is a deployment tool from the creators of Ruby on Rails. It deploys containerized web apps anywhere — from bare metal to cloud VMs — with zero downtime.
Why Kamal Exists
DHH (creator of Rails) was frustrated with expensive PaaS platforms. He built Kamal to deploy Hey.com and Basecamp to bare metal servers. Now you can use the same tool — for free.
Key Features:
- Zero Downtime Deploys — Rolling deploys with health checks
- Multi-Server — Deploy to multiple servers simultaneously
- Docker-Based — Works with any language or framework
- Built-in Proxy — Automatic SSL with kamal-proxy
- Accessories — Deploy databases and services alongside your app
Quick Start
gem install kamal
kamal init
Configuration (config/deploy.yml)
service: my-app
image: my-user/my-app
servers:
web:
- 192.168.1.1
- 192.168.1.2
job:
hosts:
- 192.168.1.3
cmd: bin/jobs
proxy:
ssl: true
host: myapp.com
accessories:
db:
image: postgres:16
host: 192.168.1.1
port: 5432
env:
POSTGRES_PASSWORD: secret
Deploy
kamal setup # First-time setup
kamal deploy # Subsequent deploys
kamal rollback # Roll back if needed
Why Choose Kamal
- Escape PaaS pricing — deploy to $5/month VPS
- Zero downtime — rolling deploys by default
- Simple — one YAML file, one command
- Battle-tested — runs Basecamp and HEY in production
Check out Kamal docs to get started.
Need data extraction tools? Check out my Apify actors or email spinov001@gmail.com for custom web scraping.
Top comments (0)