kubero
A free and self-hosted PaaS alternative to Heroku / Netlify / Coolify / Vercel / Dokku / Portainer running on Kubernetes
Kubernetesの専門知識がなくてもアプリをデプロイ・管理できる、セルフホスト型のPaaS(アプリ実行基盤)です。
・企業:セキュリティやデータ主権を重視しつつ、HerokuやRailwayのようなデプロイ体験をセルフホストで実現したい場合に、外部にデータを送らずに運用できます。 ・スタートアップ:有料PaaSの月額費用を抑えながら、Git連携・自動ビルド・ステージング環境の分離まで揃ったデプロイ環境を無料で構築できます。 ・個人事業主・フリーランス:Helmチャートやマニフェストを書かなくても、Web画面からアプリのデプロイ・ログ確認・再起動ができ、個人プロジェクトの運用が楽になります。
HerokuやRailwayは月額課金が必要なクラウド専用サービスですが、Kuberoは自前のKubernetesクラスタ上で無料で動作し、160以上のアプリテンプレートやCI/CDパイプライン、GitOpsレビューアプリなどの機能を追加費用なしで利用できます。

Kubero(読み:キューベ ヒーロー)は、セルフホスト型のPaaS(Platform as a Service)で、専門的な知識がなくてもKubernetes上にアプリケーションをデプロイできます。Kuberoは12-Factor Appの原則に従っており、既存のコンテナまたはソースコードからアプリを実行できます。
その他のスクリーンショットとフル動画はYouTubeでご覧いただけます。
機能 (デモ)
- Dockerデプロイ Helmチャートを必要とせずに、KubernetesにDockerコンテナをデプロイできます。
- アプリテンプレート(160以上) WordPressやGrafanaなどの人気アプリケーションをすぐに使えるテンプレートでデプロイできます。
- CI/CDパイプライン すべてのアプリケーションに対して、最大4つのステージング環境を持つパイプラインを無制限に作成できます。
- GitOpsレビューアプリ プルリクエストのオープンやクローズ時に、レビューアプリを自動的にビルド、起動、クリーンアップします。
- 自動再デプロイ ブランチやタグへのプッシュ時にアプリの再デプロイをトリガーします。
- アドオン統合 PostgreSQLやRedisなどのアドオンをアプリケーションと一緒にシームレスにデプロイできます。
- API & CLI 既存のツールやCI/CDワークフローとシームレスに統合できます。
- メトリクスと監視 統合されたメトリクスでアプリケーションの状態を監視できます。
- 通知 Discord、Slack、Webhookを通じてビルドやデプロイの更新を受け取れます。
- 脆弱性スキャン 実行中のアプリケーションに対してスケジュールまたはトリガーベースのスキャンを実行できます。
- アプリケーションログ WebUIから直接ログを確認でき、簡単に監視できます。
- 安全な再起動 WebUIからアプリケーションを安全かつ簡単に再起動できます。
- Webコンソール 組み込みのコンテナWebコンソールで直接アクセスできます。
- スケジュールタスク cronジョブを簡単に作成・管理できます。
- マルチテナント 複数のテナントの管理をサポートしています。
- シングルサインオン(SSO) GitHubおよびOAuth2で安全に認証できます。
- Basic認証 アプリケーションにBasic認証を簡単に設定できます。
基本コンセプト
KuberoはKubernetesネイティブで、任意のKubernetesインスタンス上で2つのコンテナ(kubero-uiとOperator)で動作します。すべてのデータはKubernetesのetcdに保存され、追加のデータベースは不要です。

アドオン
| アドオン | メンテナー | 組み込み* | |
|---|---|---|---|
| MySQL | groundhog2k | ✅ | |
| PostgreSQL | groundhog2k | ✅ | |
| Redis | groundhog2k | ✅ | |
| MongoDB | groundhog2k | ✅ | |
| RabbitMQ | groundhog2k | ✅ | |
| CouchDB | Apache | ✅ | |
| Haraka メールサーバー | Kubero | ✅ | |
| MySQL | Bitnami | ⚠️ (非推奨) | |
| PostgreSQL | Bitnami | ⚠️ (非推奨) | |
| Redis | Bitnami | ⚠️ (非推奨) | |
| MongoDB | Bitnami | ⚠️ (非推奨) | |
| Elasticsearch | Bitnami | ⚠️ (非推奨) | |
| Kafka | Bitnami | ⚠️ (非推奨) | |
| Memcache | Bitnami | ⚠️ (非推奨) | |
| RabbitMQ | Bitnami | ⚠️ (非推奨) | |
| PostgreSQL HA | CloudNative | ||
| Cloudflareトンネル | Adianth | ||
| Minio | Minio | ||
| Percona MongoDBクラスタ | Percona | ||
| Crunchy Postgresクラスタ | Crunchy Data | ||
| Redisクラスタ | Opstree | ||
| CockroachDB | CockroachDB | ||
| Clickhouse | Altinity |
* これらのアドオンはKubero Operatorに同梱されています。高可用性(HA)には対応していませんが、できるだけ早く始めるのに最適です。
** すべてのBitnamiアドオンは非推奨であり、Broadcomのイメージリポジトリ削除に伴い、今後のリリースで削除される予定です。詳細はこちら
164以上のアプリケーションテンプレート(Heroku Buttonsに類似)
- WordPress
- Grafana
- Bitwarden
- Kuma
- Trilium Notes
- ...
完全なリストはこちらをご確認ください。独自のアプリを登録することもできます!方法はこちらをお読みください。
クイックスタート
1) Kubero CLIをダウンロードして展開します(MacOS、Linux、Windows対応)
バイナリ(MacOS、Linux)
$ curl -fsSL get.kubero.dev | bash
Brew(MacOS、Linux)
$ brew tap kubero-dev/kubero
$ brew install kubero-cli
2) kubero installを実行して、新規または既存のクラスタにすべてのコンポーネントをインストールします
既存のクラスタを使用するか、以下のプロバイダーでkubero installを使って新規クラスタを作成できます:
- GKE
- Scaleway
- DigitalOcean
- Linode
- Kind(ローカル)
対応Gitリポジトリ(ホスト型およびセルフホスト型)
- Gitea / Forgejo
- Gogs
- Github
- Gitlab
- Bitbucket
テスト済みの言語/フレームワーク
基本的に、単一のコンテナにパッケージ化できるものはすべてKuberoでデプロイできます。
- GoLang(Hugo、gin-gonicを含む)
- Python(Flaskを含む)
- JavaScript/NodeJS
- PHP(Laravelを含む)
- Ruby(Railsを含む)
- 静的HTML
- Rust(Rocketを含む)
- ...
GitOpsの仕組み
- 必要なフェーズ(レビュー、テスト、ステージ、本番)を持つパイプラインを作成します
- (オプション)パイプラインをGitリポジトリ(GitHub、Bitbucket、GitLab、Gitea、Gogs)に接続します
- cronジョブやアドオンを使ってアプリを設定します
Kuberoがアプリのビルドを開始します。ビルドが完了すると、Kuberoは最終コンテナを起動し、設定されたドメインを通じてアクセス可能にします。
技術スタック
- バックエンド
- フロントエンド
- CLI
- Operator
- インフラ
リンク
コミュニティ
コントリビューション
すべての貢献を歓迎します!
- Issue/バグ/エラーの報告
- 機能リクエストの提出
- ディスカッションセクションやDiscordでのアイデア議論
- タイプミスの修正(よくあります)
- コードの貢献
- 記事の執筆
プロジェクトの支援
このプロジェクトにスターを付けていただけると大きな励みになります。ありがとうございます!
