# Kamal

Command-line tool that deploys web apps packaged as Docker containers to servers over SSH, with zero-downtime switching.


Source: https://findsoftware.frbit.cloud/kamal/
Last reviewed: 2026-10-28
Listed since: 2026-10-28

## Record

### Links

- home: https://kamal-deploy.org
- repository: https://github.com/basecamp/kamal
- docs: https://kamal-deploy.org/docs/installation/
- discord: https://discord.gg/YgHVT7GCXS
- forum: https://github.com/basecamp/kamal/discussions

### Identity

- status: active
- maintainer: 37signals LLC
- maintainerType: company
- parent: unknown
- firstRelease: 2023
- hqCountry: US

### Kind

- category: dev-tool
- hosting: not applicable
- language: ruby
- runtime: ruby
- runtimeMin: not applicable
- basedOn: unknown

### Content

- contentStore: not applicable
- databases: not applicable
- adminUi: not applicable
- headlessApi: not applicable
- templating: not applicable
- i18n: not applicable

### Rendering and deploy

- runsAs: local
- renderingModes: not applicable
- installMethod: gem install kamal

### License

- licenseModel: open-source
- license: MIT

### Releases

- currentMajor: 2
- latestReleaseDate: 2026-06-18

### Adoption

- githubStargazers: 14692
- packagistDownloads: not applicable
- npmWeeklyDownloads: not applicable
- contributors: 167
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: unknown
- dependentPackages: unknown

### Sources

- urls: https://kamal-deploy.org/ (read 2026-10-28)
- urls: https://api.github.com/repos/basecamp/kamal (read 2026-10-28)
- urls: https://kamal-deploy.org/docs/installation/ (read 2026-10-28)
- maintainer: https://37signals.com/terms (read 2026-10-28)
- hqCountry: https://37signals.com/privacy (read 2026-10-28)
- language: https://api.github.com/repos/basecamp/kamal (read 2026-10-28)
- category: https://kamal-deploy.org/ (read 2026-10-28)
- runtime: https://kamal-deploy.org/docs/installation/ (read 2026-10-28)
- installMethod: https://kamal-deploy.org/docs/installation/ (read 2026-10-28)
- installMethod: https://kamal-deploy.org/docs/installation/ (read 2026-10-28)
- runsAs: https://kamal-deploy.org/docs/installation/ (read 2026-10-28)
- license: https://api.github.com/repos/basecamp/kamal (read 2026-10-28)
- licenseModel: https://github.com/basecamp/kamal/blob/main/README.md (read 2026-10-28)
- firstRelease: https://api.github.com/repos/basecamp/kamal/releases (read 2026-10-28)
- currentMajor: https://api.github.com/repos/basecamp/kamal/releases (read 2026-10-28)
- latestReleaseDate: https://api.github.com/repos/basecamp/kamal/releases (read 2026-10-28)
- githubStargazers: https://api.github.com/repos/basecamp/kamal (read 2026-10-28)
- contributors: https://api.github.com/repos/basecamp/kamal/contributors (read 2026-10-28)

## Notes

Kamal deploys web apps that run in Docker containers to servers it reaches over SSH. The command-line tool builds the image, pushes it to a registry, pulls it onto each server and starts a new container. kamal-proxy then routes traffic to the new container once it answers its health check. The project was originally built for Rails apps and works with any web app that can be containerized. It was formerly known as MRSK.

Kamal is installed with gem install kamal, or run from a Docker container when Ruby is not available. The [installation guide](https://kamal-deploy.org/docs/installation/) says that the first setup installs Docker on any server that lacks it, which needs root access over SSH.

---

Data licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Attributes are recorded, never scored; absent means unknown.
Credit, in full: FindSoftware, CC BY 4.0
