Skip to main content
このページは先行公開版です。内容は今後予告なく更新される可能性があります。

対応しているコンテナレジストリ

  • AWS ECR(AK/SK または IRSA)/ Azure ACR / Aliyun ACR / Tencent TCR / Dockerhub / Google Artifact Registry

コンテナレジストリが必要な理由

  • Dify Enterprise では、プラグインイメージの保存および管理のためにコンテナレジストリが必要です。
  • プラグインパッケージは Docker イメージではなく、コードとメタデータを含む圧縮ファイルです。
  • Kubernetes クラスター上で実行される際、プラグインパッケージは Docker イメージとしてビルドされるため、コンテナレジストリが必要です。

Helm チャートの値を表示

以下は、Helm チャートにおけるコンテナレジストリ設定の例です:

コンテナレジストリの設定方法

1. imageRepoSecret(必須)

Kubernetes の Secret として、レジストリ認証情報を保存します。

1.1 警告

この Secret の名前は image-repo-secret で固定されており、Dify デプロイ時に作成しておく必要があります。

1.2 以下のスクリプトを generate-image-repo-secret.sh として保存してください:

1.3 実行権限を付与:

1.4 スクリプトを実行して Secret を作成:

2. imageRepoPrefix(必須)

プラグインイメージをプッシュする際に使用する、リポジトリのプレフィックスです。

3. imageRepoType(必須)

使用するレジストリの種類:
  • docker(デフォルト):Docker Hub または互換レジストリ
  • ecr:AWS ECR 用

4. ecrRegion(オプション)

ECR を使用する場合、AWS リージョンを指定します。

5. insecureImageRepo(オプション)

レジストリが HTTPS を使用していない場合は、true に設定します。

プラグイン Pod の Kubernetes スケジューリング設定

  • plugin_connector サービスの設定項目(nodeSelectoraffinitytolerationslabels)は、プラグイン用 Pod にも拡張適用されます

国や地域によるネットワーク制限がある場合の設定方法

ネットワーク制限により docker.io にアクセスできない場合は、カスタムのイメージリポジトリを使用することができます。
  1. 置き換えが必要なイメージ一覧:
  • gatewayImage: プラグインゲートウェイサービス用のイメージ
  • shaderImage: プラグインビルド時に使用される Shader イメージ
  • busyBoxImage: プラグイン実行時に使用される BusyBox イメージ
  • awsCliImage: AWS CLI 用のイメージ(AWS を使用しない場合は無視して構いません)
  • python3.xx: プラグインビルド時に使用される Python ベースのイメージ
  1. イメージをプライベートレジストリへ同期する方法
各種イメージをプライベートレジストリに同期する方法については、プライベートレジストリへのイメージ同期手順 をご参照ください。