BorisPolonsky/dify-helm

Deploy langgenious/dify, an LLM based app on kubernetes with helm chart.

解决的问题

本项目提供一个 Helm 图表,可简化在 Kubernetes 集群上部署 Dify(基于 LLM 的聊天机器人应用)的过程。它处理了在大规模运行平台时所需的多个后端服务、数据库和代理的复杂编排。

工作原理

使用 Helm 自动化部署由多个关键组件组成的全面网络架构:

  • 核心服务:部署 API 服务器、Web UI 前端、后台工作进程(Celery)和周期性任务调度器(Beat)。
  • 执行环境:设置用于代码执行的安全沙箱和用于代理 shell 执行的本地沙箱。
  • 代理与插件基础设施:编排代理后端以进行运行编排,并管理插件守护进程以执行插件。
  • 流量管理:使用 Nginx 代理在 Web 前端、API 端点和插件服务之间路由流量。
  • 数据层:与多种数据库(PostgreSQL、MySQL)、缓存(Redis)以及向量数据库(如 Weaviate、Qdrant、Milvus 或 PGVector)集成。
  • 存储:支持本地 PVC 或外部对象存储,如 AWS S3、Azure Blob 和 Google Cloud Storage。

适用人群

希望在 Kubernetes 上部署和管理 Dify 以确保高可用性和可扩展性的 DevOps 工程师和平台团队。

主要亮点

  • 全面的编排:管理包括 API、Web、Worker 和沙箱组件在内的整个 Dify 堆栈。
  • 灵活的数据存储:支持广泛的外部数据库、向量数据库和对象存储提供商。
  • 企业级网络:包含 SSRF 安全代理和 Nginx 反向代理,实现安全且可外部访问的流量路由。
  • 原生 Kubernetes:专为 Kubernetes 1.23+ 和 Helm 3.12+ 构建。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目