DEV Community

Alex Spinov
Alex Spinov

Posted on

Kamal Has a Free API You Should Know About

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

Deploy

kamal setup    # First-time setup
kamal deploy   # Subsequent deploys
kamal rollback # Roll back if needed
Enter fullscreen mode Exit fullscreen mode

Why Choose Kamal

  1. Escape PaaS pricing — deploy to $5/month VPS
  2. Zero downtime — rolling deploys by default
  3. Simple — one YAML file, one command
  4. 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)