Skip to content

Hetzner Cloud

Kamal on Hetzner Cloud, in a project you own.

KamalCloud builds servers in your Hetzner project, hardens them and runs Kamal against your repository. Hetzner bills you for the machines, at Hetzner's price.

Provisioned in your project

Connected in three steps.

European, inexpensive and quick to provision. The token is encrypted at rest and only ever leaves KamalCloud to talk to Hetzner.
  1. 01

    Create a project in the Hetzner Cloud console.

  2. 02

    Open Security, then API tokens, and generate one with Read & Write.

  3. 03

    Paste it into KamalCloud. Nothing is created until you ask for it.

What you get on Hetzner.

Everything around the deploy, on machines in your own project.

Servers in your account

Pick a machine type, location and image from the connection's catalog, with prices. The machine is created in your own Hetzner account.

Hardened, and checked

Firewall, SSH lockdown, fail2ban and unattended upgrades, read back off the server every time you open the page.

Deployed with Kamal

The official Kamal image runs against your repository from GitHub, GitLab, Gitea or Bitbucket. Deploy on a push to a branch or tag, once you turn it on.

Backups to your own storage

Databases and volumes, scheduled, to buckets you control, with restore and download. Deleting an app, environment or server backs them up first.

Domains and certificates

Certificates issued and renewed, and DNS checked against what is actually resolving.

What it costs

Spend estimated from the provider's own price list, per server, with idle resources flagged.

FAQ

Questions about Hetzner.

All questions
Do I pay KamalCloud for the servers?

No. Servers are created in your own Hetzner account and Hetzner bills you for them, at its own price. KamalCloud never resells infrastructure.

Can KamalCloud use a Hetzner server I built by hand?

Yes. Hetzner is the only provider that hands a root password back, which is how KamalCloud can put its key on a machine built before the keys existed. An app already running on it can be imported: KamalCloud reads it off the Docker containers and touches nothing on the machine.

What happens if I delete a server in KamalCloud?

The machine is destroyed at Hetzner, disk and all. Its databases and volumes are backed up first, and if a backup can't be taken, nothing is deleted. Disconnecting the project is different: it removes KamalCloud's record of the machines and destroys nothing.

Can staging and production live in separate projects?

Yes. Two Hetzner projects are two connections, with two keyrings and two sets of server names.

Connect a Hetzner project.

Paste a token, then build a server when you are ready. Nothing is created until you ask for it.

Sign-ups are paused while the app is in maintenance.