Difyをローカルで構築する際の構成要件は?

ローカルサーバーにソースコードをgit cloneし、Dockerを使ってDify一式を構築し、docker-compose.yaml内のすべてのリソースを参照したいのですが、その際の基本的な構成要件はどのくらいになりますか?

ソースコードはどこからダウンロードしたのですか?上に説明がありますよ、もう一度見てください。

@Dify_Forum_Helper 助けて

こんにちは!ローカルでソースコードと Docker Compose を使用して完全な Dify をデプロイするには、公式ドキュメントには厳密な「最小構成表」は記載されていませんが、コミュニティの経験とコンテナコンポーネントの実際の消費量に基づき、以下に推奨される構成要件を示します。

:desktop_computer: 基本構成要件

Dify の docker-compose.yaml は、同時に約 9 つのコンテナを起動するため(API、Worker、フロントエンド、PostgreSQL、Redis、Weaviate/Qdrant ベクトルデータベース、Sandbox などを含む)、メモリに一定の要件があります。

  • CPU: 推奨 2 vCPU 以上(パフォーマンス向上のため 4 vCPU を推奨)。
  • メモリ (RAM):
    • 最小起動: 4 GB(動作が遅くなったり、OOM (Out Of Memory) エラーが発生しやすくなる可能性があります)。
    • 推奨構成: 8 GB 以上(PostgreSQL とベクトルデータベースの安定稼働を保証するため、特にドキュメントをアップロードしてインデックスを作成する場合)。
  • ストレージ: 30 GB - 50 GB 以上のスペースを確保することを推奨します(Docker イメージ、ログ、データベースデータ、アップロードされたファイルの保存用)。

:hammer_and_wrench: ソフトウェア環境要件

  1. オペレーティングシステム: Linux (Ubuntu 20.04/22.04 など), macOS, または Windows (WSL2)。
  2. Docker: 最新版の Docker Desktop または Docker Engine のインストールを推奨します。
  3. Docker Compose: Docker Compose V2 の使用を推奨します。

:light_bulb: これらのリソースが必要な理由

完全なデプロイには以下の主要コンポーネントが含まれており、それぞれリソースを消費します。

  • Web & API: Python (Flask) アプリケーション、リクエストを処理します。
  • Worker: 非同期タスクキュー、複雑なエージェント推論とファイル解析を処理します。
  • PostgreSQL: ビジネスデータを保存します。
  • Redis: キャッシュとセッションストレージ。
  • Weaviate/Qdrant: ベクトルデータベース(これは通常、特にナレッジベースのデータ量が増加すると、メモリ消費の大部分を占めます)。
  • Sandbox: コード実行サンドボックス。

もしサーバーのリソースが限られている場合は、docker-compose.yaml の設定を変更するか、Worker のレプリカ数を減らすことを検討してください(デフォルト設定は通常すでに非常に簡素化されています)。

:books: 関連ドキュメント:

これがお役に立てば幸いです!