Continuous Delivery
For Kubernetes


> kubectl apply -f my-awesome-app.yaml

Don't do it by hand, ever

Kubectl is the new SSH. If you are using it to update production workloads, you are doing it wrong. See examples on how to automate application updates.


> kubectl create -f deployment-rbac.yaml

namespace "keel" created

serviceaccount "keel" created

clusterrolebinding "keel-clusterrole-binding" created

clusterrole "keel-clusterrole" created

deployment "keel" created

Self-hosted, deployable in seconds

Single command, no dependencies. No lock-in, no custom configuration files. Start using now.


No CLI/API required

Runs as a single container, no database required. Policies and trigger types are specified in your application deployment files or Helm charts. Keel extends Kubernetes without adding complexity.

Policy-driven updates

In order for Keel Just specify on the applications themselves, when you want them to be updated, i.e. from 0.1.0 to 0.2.0 (minor) or only major versions.

Open Source

Keel is Open Source and was designed to be easily extendable. Providers, triggers and notification mechanisms are just default interface implementations. If you need Nomad, Docker Swarm or Mesos support, it's easy to add it.

Support Keel

Has Keel helped you save time by automating tasks and enforcing policies? Keel can use your help to realize its mission - making developer's and admin's lives easier, further its reach, as well as support its development. There are a few ways you can help - feel free to choose more than one:

Become a patron

Not finding what you are looking for?

Send us an email or submit an issue. Or find Keel's users on Slack - look for channel #keel.

Send us an email Submit an issue