Kubero [pronounced: Kube Hero] is a fully self-hosted Internal Developer Platform (IDP) that brings the workflows of Heroku to your Kubernetes cluster. It enables you to deploy your applications with a few clicks on the Dashboard or by CLI. It has a built-in CI/CD pipeline and supports multiple staging environments.
More Screenshots and a full video on YouTube
DEMO)
How it Works (- Create a pipeline with the phases you need (review, test, stage, production)
- Connect the pipeline to your git repository (Github, Bitbucket, Gitlab, Gitea, Gogs)
- Configure your apps with cronjobs and addons
Kubero will then start an init container that will clone your repository and another init container to build your app. Kubero is now able to start the container and expose it to the internet. You can now access your app via the configured domain.
What can Kubero do for you?
- Create a CI pipeline with up to 4 separate
staging environments
for all your applications - Build, start and cleanup
review-apps
after opening/closing a pull request - Automatic
redeployment
of the app based on a push to a branch or tag - Create scheduled tasks as
cronjobs
- Deploy well known apps with
template
(Wordpress, Grafana, ...) - Easy deployment of your apps on Kubernetes
without helm charts
- Deploy
add-ons
for your application (PostgreSQL, Redis, and more ...) - Easy access of
application logs
in the UI - Easy and safe
restart
of the application in the UI - Periodic
vulnerability scans
of your running apps
What Kubero won't do for you
- Manage your Kubernetes cluster
- Give access to your container CLI
Supported GIT repositories (hosted and self-hosted)
- Gitea / Forgejo
- Gogs
- Github
- Gitlab
- Bitbucket
- OneDev (planned)
Tested languages/frameworks
Basically everything that can be shipped in a single container. Kubero uses official images to build and run the apps. But they can be replaced or extended to fit your needs.
- GoLang (including Hugo, gin-gonic)
- Python (including Flask)
- JavaScript/NodeJS
- PHP (including Laravel)
- Ruby (including Rails)
- Static HTML
- Rust (including Rocket)
- ...
You find the preconfigured buildpacks and examples here: https://github.com/kubero-dev/buildpacks
Preconfigured add-ons
The Kubero Operator ships with several basic addons that can be used in your apps.
- MySQL
- PostgreSQL
- Redis
- MongoDB
- Elasticsearch
- Kafka
- CouchDB
- Haraka Mail Server
- RabbitMQ (WIP)
- CockroachDB (WIP)
- Minio (planned)
- InfluxDB (planned)
50+ Application templates (similar to Heroku Buttons)
- Wordpress
- Grafana
- Kuma
- Trilium Notes
- ...
Check out the full list here or submit your own app! Read here how to do it.
Basic Concept
Kubero is Kubernetes native and runs with two containers on any Kubernetes instance.
Quickstart
- Download and unpack the Kubero CLI
- Run
kubero install
to install all components on an new or your existing cluster
You can bring your own cluster or create one with the kubero install on one of the following providers:
- GKE
- Scaleway
- DigitalOcean
- Linode
- Kind (local)
Documentation
Roadmap
https://github.com/orgs/kubero-dev/projects/1/views/3
Community
Contributing
All contributions are welcome!
- Open an issue
- Add a feature or open a feature request
- Discuss ideas in the discussions
- Fix typos
- Contribute code
- Write articles
Supporting this project
Starring this project is a huge motivation.