すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ACKクラスターへのComfyUIアプリケーションのデプロイ

最終更新日:Oct 11, 2025

このトピックでは、GPU ノードを搭載した Alibaba Cloud Container Service for Kubernetes (ACK) マネージド Pro クラスターに ComfyUI アプリケーションをデプロイする方法を説明します。ACK にデプロイすることで、ローカル実行時に発生しがちなパフォーマンスのボトルネックや、複雑な環境構築といった課題を解決できます。

前提条件

  • Kubernetes バージョン 1.22 以降を実行している ACK マネージド Pro クラスター が必要です。また、クラスターには GPU メモリが 16 GB 以上の GPU ノードが含まれている必要があります。

  • NVIDIA ドライバーのバージョンは 535 以降である必要があります。本トピックの例では、GPU ノードプールに ack.aliyun.com/nvidia-driver-version ラベルを追加し、値を 550.144.03 に設定します。

ステップ 1: モデルデータを準備する

この例では、テキストプロンプトから 1 ステップで画像を生成する sdxl-turbo モデルを使用します。以下の手順では、モデルをダウンロードして Object Storage Service (OSS) にアップロードし、永続ストレージとして ACK クラスターに PersistentVolume (PV) と PersistentVolumeClaim (PVC) を作成します。

  1. モデルファイルをダウンロードします。

    1. Git と Git Large File Storage (LFS) 拡張機能をインストールします。

      macOS

      1. Git をインストールします。

        公式にメンテナンスされている macOS Git インストーラーは、Git の公式サイトから入手できます。
        brew install git
      2. 大きなファイルをプルするために Git LFS 拡張機能をインストールします。

        brew install git-lfs

      Windows

      1. Git をインストールします。

        Git の公式サイトから適切なバージョンをダウンロードしてインストールします。

      2. 大きなファイルをプルするために Git LFS 拡張機能をインストールします。Git LFS は Git for Windows に統合されています。最新バージョンをダウンロードして使用してください。

      Linux

      1. Git をインストールします。

        次のコマンドは、Red Hat ベースの Linux ディストリビューション用です。他のシステムについては、Git の公式サイト をご参照ください。

        yum install git
      2. 大きなファイルをプルするために Git LFS 拡張機能をインストールします。

        yum install git-lfs
    2. sdxl-turbo モデルをダウンロードします。

      GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/AI-ModelScope/sdxl-turbo.git
      cd sdxl-turbo
      git lfs pull
  2. ダウンロードした sdxl-turbo フォルダを OSS にアップロードします。

    1. ossutil をインストール します。

      ossutil は、OSS リソースを管理するためのコマンドラインツールです。

    2. OSS バケットを作成します。

      バケットがない場合は、次のコマンドを実行して作成します。<Your-Bucket-Name> をバケットのグローバルに一意な名前に置き換えてください。

      ossutil mb oss://<Your-Bucket-Name>
    3. バケット内にディレクトリを作成します。
      モデルファイルを保存するため、バケット内に sdxl-turbo という名前のディレクトリを作成します。

      ossutil mkdir oss://<Your-Bucket-Name>/sdxl-turbo
    4. モデルファイルをアップロードします。
      モデルをダウンロードしたディレクトリから次のコマンドを実行して、すべてのファイルを先ほど作成した OSS ディレクトリに再帰的にコピーします。

      ossutil cp -r ./sdxl-turbo oss://<Your-Bucket-Name>/sdxl-turbo
  3. モデルデータ用の PV を作成します。

    1. ACK コンソールにログインし、クラスターの詳細ページに移動します。

    2. 左側のナビゲーションウィンドウで、[ボリューム] > [永続ボリューム] を選択します。

    3. [永続ボリューム] ページで、[作成] をクリックし、次のパラメーターを設定します。

      • ストレージタイプ: [OSS] を選択します

      • ボリューム名: sdxl-turbo-model と入力します

      • 容量: 20Gi と入力します

      • アクセスモード: [ReadWriteMany] を選択します

      • アクセス証明書: [Secret の作成] を選択します

      • オプションパラメーター: -o umask=022 -o max_stat_cache_size=0 -o allow_other と入力します

      • バケット ID: モデルをアップロードしたバケットを選択します。

      • OSS パス: /sdxl-turbo と入力します

      • エンドポイント: [インターネットエンドポイント] を選択します

    4. [作成] をクリックします。

  4. PV にバインドする PVC を作成します。

    1. ACK コンソールの左側のナビゲーションウィンドウで、[ボリューム] > [永続ボリューム要求] を選択します。

    2. [永続ボリューム要求] ページで、[作成] をクリックし、次のパラメーターを設定します:

      • ボリュームタイプ: [OSS] を選択します

      • 名前: sdxl-turbo-model と入力します

      • 割り当てモード: 既存のボリューム を選択します

      • 既存ボリューム: 先ほど作成した sdxl-turbo-model PV を選択します。

      • 容量: 20 Gi

    3. [作成] をクリックします。sdxl-turbo-model PVC がリストにバインド済みステータスで表示されます。

ステップ 2: ComfyUI アプリケーションを設定する

  1. ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、対象クラスターの名前をクリックします。左側のナビゲーションウィンドウで、[アプリケーション] > [Helm] を選択します

  3. [Helm] ページで、[デプロイ] をクリックします。comfyui コンポーネントを見つけ、必要に応じてパラメーターを設定し、[次へ] をクリックします。image

  4. [パラメーター] ステップで、persistence セクションまでスクロールし、モデルファイル用に作成した PVC を使用するように変更します。他のすべての設定はデフォルトのままにします。

    persistence:
      - mountPath: "/app/ComfyUI/models/checkpoints"       # モデルのマウントパス
        annotations:
          helm.sh/resource-policy: keep
        persistentVolumeClaim:      
          existingClaim: "sdxl-turbo-model"    # 先ほど作成した PVC を使用
          accessModes: ReadWriteMany
          storageClass: oss                    # ストレージタイプを OSS として指定
          size: 20Gi
          subPath: ""
    • モデルソースを変更: mountPath: "/app/ComfyUI/models/checkpoints"

    • 作成した PVC に変更: existingClaim: "sdxl-turbo-model"

    • ストレージクラスを変更: storageClass: oss

ステップ 3: サービスへのアクセスとテスト

  1. kubectl を使用して、ComfyUI サービスをローカルポート 8080 に転送します。

    ローカルマシンでポート 8080 が使用されていないことを確認してください。ポートフォワーディング接続を維持するために、ターミナルウィンドウを開いたままにしておきます。
    kubectl port-forward svc/ack-comfyui 8080:8188

    期待される出力:

    Forwarding from 127.0.0.1:8080 -> 8188
    Forwarding from [::1]:8080 -> 8188

    Web ブラウザーを開き、http://localhost:8080 にアクセスします。

  2. sdxl-turbo のサンプルワークフローをダウンロードします。ComfyUI ページで、Load をクリックし、ダウンロードしたワークフローファイルを選択します。

  3. CLIP Text Encode (Prompt) テキストボックスに、希望するプロンプトを入力します。例:

    beautiful landscape scenery glass bottle with a galaxy inside cute fennec fox snow HDR sunset
  4. ComfyUI ページで、設定の Extra OptionsAuto Queue を有効にします。次に、Queue Prompt をクリックして画像を生成します。

    image