BorisPolonsky/dify-helm
Deploy langgenious/dify, an LLM based app on kubernetes with helm chart.
dify‑helm – Dify LLM ベースのチャットボット用 Helm チャート
何であるか – Kubernetes クラスタにオープンソースの Dify アプリケーション(LLMチャットボットの構築用の Web UI + API)を即時利用可能な Helm チャートでインストールするものです。このチャートは公式の Dify Docker イメージを取得し、リバースプロキシでそれらを接続し、オプションで外部データベース、キャッシュ、ベクトルストア、オブジェクトストレージに接続できます。
なぜ重要か – 本番環境で LLM ベースのサービスを実行するには、多数のマイクロサービス、セキュアなコード実行サンドボックス、バックグラウンドワーカー、永続ストレージなど、多くの構成が必要です。dify‑helm はこれらすべてを1つの Helm リリースにパッケージ化し、数行のコマンドでフル機能のチャットボットプラットフォームを迅速に起動できるようにします。
クイックスタート(TL;DR)
helm repo add dify https://borispolonsky.github.io/dify-helm
helm repo update
helm install my-dify dify/dify # 自分の values.yaml を追加してカスタマイズ
必須 Kubernetes ≥ 1.23 および Helm ≥ 3.12。
コアアーキテクチャ(README に示されている通り)
- Ingress / ロードバランサー – オプションの外部エントリポイント。
- nginx プロキシ – HTTP トラフィックを適切な内部サービスにルーティング。
- API サービス(ポート 5001) –
langgenius/dify-api– ワークフローのオーケストレーション用の REST + Socket.IO。 - Web UI(ポート 3000) –
langgenius/dify-web– ブラウザベースのチャットインターフェース。 - Worker および Beat ポッド – バックグラウンドジョブおよび定期タスク用の Celery ワーカー。
- サンドボックスポッド –
dify-sandbox(コード実行)およびdify-agent‑local‑sandbox(エージェント側のシェルコマンド)で、SSRF 対策の Squid プロキシで隔離。 - プラグインデーモン – ユーザー提供のプラグインを実行。
- エージェントバックエンド – LLM ベースのエージェントをオーケストレーション。
- データレイヤー – PostgreSQL/MySQL、Redis(キャッシュおよび Celery ブローカー)、選択可能なベクトルDB(Weaviate、Qdrant、Milvus、PGVector など)。
- ストレージレイヤー – ローカル PVC または主要なクラウドオブジェクトストレージ(S3、Azure Blob、GCS、Alibaba OSS、Tencent COS、Huawei OBS、Volcengine TOS)をサポート。
設定可能な項目
| 分野 | 設定可能な内容 |
|---|---|
| Ingress | Ingress リソースの有効/無効、ホスト名、TLS の選択 |
| サービスタイプ | nginx プロキシの ClusterIP、LoadBalancer、NodePort |
| 外部依存 | チャートをバンドルされたものではなく、既存の PostgreSQL/MySQL、Redis、ベクトルDB、オブジェクトストレージエンドポイントに接続 |
| リソース制限 | 各ポッドの CPU/Memory 要求および制限 |
| 永続化 | PostgreSQL、Redis、ファイルストレージ用の PVC サイズ |
| 機能トグル | サンドボックス、エージェントスタック、プラグインデーモンの有効/無効 |
これらのオプションはすべて、チャートの README.md(リポジトリからリンク)にドキュメント化されています。
使用する場面
- セルフホスト型 LLM チャットボット – 内部チームや顧客向けにプライベートな Dify インスタンスをデプロイ。
- 本番向け AI サービス – Kubernetes のスケーリング、ローリングアップデート、監視機能を活用。
- ベクトルストアの実験 – アプリケーションコードを変更せずに Weaviate、Qdrant、Milvus などに切り替え可能。
- セキュアなコード実行 – サンドボックスと SSRF プロキシを使用して、ユーザー提供の Python/JS スニペットを安全に実行。
制限事項 / 注記
- このチャートはデプロイメントのみをパッケージ化しており、Dify の設定経由で独自の LLM モデルエンドポイント(例:OpenAI、Azure OpenAI、またはセルフホストモデル)を提供する必要があります。
- オプションコンポーネント(例:外部ベクトルDB)は、ネットワーク設定や認証情報を手動で設定する必要があります。
- README にはヘルスチェックや監視のガイドが含まれていません。必要に応じて Prometheus/Alertmanager を別途追加する必要があります。
コントリビューター
リポジトリには contrib.rocks によって生成されたコントリビューターのバッジが表示されており、コミュニティ参加の証です。
結論 – dify‑helm は本番環境を想定した本格的な Helm チャートであり、Dify LLM チャットボットプラットフォームのすべての要素を1つにまとめ、Helm に慣れている人にとって Kubernetes 上でのデプロイを簡単かつ確実にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト