Skip to content

krane/krane

Repository files navigation

⚠️ This project is not under active development

Open-source, self-hosted, container management solution

CI Release Go Report Card

Krane is a container management solution that helps you to deploy infrastructure with ease. Lightweight and easy to setup, Krane is great for developers who want to self-host infrastructure at the lowest cost possible.

Tooling

These development tools help manage and automate infrastructure running on Krane.

Features

  • Krane runs on compute as low as $3.50
  • Single command deployments
  • Single file deployments
  • Deployment DNS aliases (subdomain.example.com)
  • Deployment secrets for hiding sensitive environment variables
  • Deployment scaling to distribute the workload between containers
  • Deployment rate limit to limit incoming requests
  • HTTPS/TLS out-of-the-box with auto generated Let's Encrypt certificates
  • Self-hosted - Cost-effective, bring your own server, scale when you need

Quick-Start - Install Script

  1. Install Krane

The install.sh script provides a convenient way to download Krane on virtually any compute such as Vultr, Digital Ocean, AWS, Azure, GCP, Linode, and even on your localhost.

To install Krane just run:

bash <(wget -qO- get.krane.sh)
  1. Create a deployment configuration file

deployment.json

{
  "name": "krane-getting-started",
  "image": "docker/getting-started",
  "alias": ["getting-started.example.com"]
}
  1. Deploy
krane deploy -f ./deployment.json

Please see the official docs site for complete documentation.

Motivation

Krane is a self-hosted PaaS. You bring your own server and install Krane on it to manage your containers in the form of deployments - The benefit, cost per deployment. A self-hosted solution allows you to own your server (cost-effective), and the benefit of any number of deployments at no extra cost. Maintaining and managing your own solution may sound complex, Krane tries to make the process straight-forward and cost-effective .

Krane isn't a replacement for Kubernetes, ECS, or any other container orchestration solution you might see running production applications, instead it's a tool you can leverage to make development of side-projects or small workloads cheap and straight forward. That was the main objective, a productive deployment tool for managing non-critical container workloads on remote servers.

Contributions

Krane is released under the MIT license. Please refer to the contribution guidelines before raising an issue or feature request. We appreciate all contributions, small or large, and look forward to hearing feedback and improvement proposals.