このプロジェクトについて

Uncloudは、クラウドVMやベアメタルを含むDockerホストのネットワーク全体にコンテナ化されたアプリケーションをデプロイおよび管理するために設計された、軽量なクラスタリングおよびコンテナオーケストレーションツールです。マシン間に安全なWireGuardメッシュネットワークを構築し、自動サービスディスカバリ、ロードバランシング、HTTPSによるイングレス、および管理用のシンプルなCLIを提供します。 Kubernetesのような従来のオーケストレータとは異なり、Uncloudには維持すべき中央制御プレーンやクォーラムがありません。各マシンはピアツーピア通信を通じてクラスタ状態の同期コピーを保持するため、一部のマシンがオフラインになっても操作が継続されます。この分散型設計により、運用上のオーバーヘッドが削減され、単一障害点が排除されます。 主な機能は次のとおりです。 - **どこにでもデプロイ**: クラウドVM、専用サーバー、ベアメタルを統合環境に組み合わせます。 - **Docker Composeサポート**: サービスとボリュームを定義するために使い慣れたCompose形式を使用します。 - **ゼロダウンタイムデプロイ**: サービスを中断せずにローリングアップデートを実行します。 - **Unregistry統合**: 外部レジストリなしでDockerイメージを直接マシンにビルドおよびプッシュします。 - **サービスディスカバリ**: 組み込みDNSがサービス名をコンテナIPに解決します。 - **永続ストレージ**: マシン間でDockerボリュームを管理します。 - **ゼロコンフィグのプライベートネットワーク**: ピアディスカバリとNATトラバーサルを備えた自動WireGuardメッシュ。 - **マネージドDNS**: Uncloud DNSを介したパブリックサービス向けの自動DNSレコード。 - **自動HTTPS**: 組み込みのCaddyリバースプロキシがTLS証明書を処理します。 - **DockerライクなCLI**: インフラストラクチャとアプリ管理のための使い慣れたコマンド。 - **リモート管理**: 任意の単一マシンへのSSHを通じてクラスタ全体を制御します。 UncloudはDockerとKubernetesの間のギャップを埋めることを目指し、Kubernetesの複雑さなしにセルフホストインフラストラクチャを求める開発者に実用的なソリューションを提供します。活発に開発中(pre-1.0)であり、Docker、Caddy、WireGuard、Corrosion(CRDTベースの分散SQLiteデータベース)など、実績のあるプロジェクトに依存しています。 インタラクティブなチュートリアルとプレイグラウンドはiximiuz Labsで利用可能で、コミュニティレシピはuncloud-recipesリポジトリにあります。このプロジェクトはKamal、Fly.io、Tailscale、Talos Linux、Docker Swarm Classicに触発されています。