Docker Compose の評価
パブリック Docker Compose デプロイでは、単一の KVM ホスト用のセルフホスト VM コンソールがパッケージ化されます。ローカル ソースからビルドし、ホスト仮想化リソースをマウントし、ポート 80 でフロントエンドを公開します。
開始と検査
cto-gui から:
docker compose -f docker-compose.self-hosted.yml up --build -d
docker compose -f docker-compose.self-hosted.yml ps
docker compose -f docker-compose.self-hosted.yml logs --tail=200 backend frontend両方のサービスが実行されている必要があります。バックエンドは qemu:///system に接続する必要があります。 libvirt にアクセスできない正常なコンテナは、使用可能なデプロイメントではありません。
Compose の機能
../cto-gui-libvirt-backendからバックエンドを構築します。- セルフホスト型 UI を使用して
cto-gui/Dockerfile.frontendからフロントエンドを構築します モードが有効になっています。 /dev/kvmと libvirt ソケットを特権バックエンド コンテナに渡します。/var/lib/libvirt/images読み取り/書き込みをマウントします。- ソース ISO とプロモートされたゴールデン イメージ ディレクトリを読み取り専用でマウントします。
- バックエンド データを
cto-dataという名前付きボリュームに保存します。 - 明示的に停止しない限り、両方のサービスを再起動します。
Compose で実行できないこと
TLS、運用 ID プロバイダー、高可用性、外部データベース、オフホスト バックアップ、シークレット マネージャー、ログ配布、自動更新、マルチホスト スケジューラは構成されません。 restart: unless-stopped はコンテナの再起動ポリシーであり、サービスの高可用性ではありません。
評価の更新
再構築する前に、現在のコミットと実行中のゲストのインベントリを記録します。
git rev-parse HEAD
docker compose -f docker-compose.self-hosted.yml ps
virsh -c qemu:///system list --all
docker compose -f docker-compose.self-hosted.yml build --pull
docker compose -f docker-compose.self-hosted.yml up -dその後、モード、ISO 起動、VNC、停止、削除、再起動のチェックを繰り返します。 リポジトリは、ダウンタイムゼロの Compose アップグレードを約束するものではありません。
状態を消去せずに停止
docker compose -f docker-compose.self-hosted.yml down定期的な停止またはアップグレード中は、--volumes を避けてください。名前付きボリュームには、永続的なテスト状態と、再起動後に使用されるクリーンアップ ジャーナルが含まれています。