1 minute read

Dify 是一个开源的 LLM 应用开发平台。其直观的界面结合了 AI 工作流、RAG 管道、Agent、模型管理、可观测性功能等,让您可以快速从原型到生产。

安装

克隆代码仓库

git clone https://github.com/langgenius/dify

Docker 部署

Dify 提供了 Docker 部署方式,您可以通过以下步骤快速部署:

cd dify
cd docker
cp .env.example .env
docker compose up -d

运行后,可以在浏览器上访问 http://localhost/install 进入 Dify 控制台并开始初始化安装操作。

自定义配置

如果您需要自定义配置,请参考 .env.example 文件中的注释,并更新 .env 文件中对应的值。此外,您可能需要根据您的具体部署环境和需求对 docker-compose.yaml 文件本身进行调整,例如更改镜像版本、端口映射或卷挂载。完成任何更改后,请重新运行 docker-compose up -d。您可以在此处找到可用环境变量的完整列表。

服务镜像

核心镜像(必需)

# 核心服务
docker pull langgenius/dify-api:1.4.1          # API 服务
docker pull langgenius/dify-web:1.4.1          # 前端 Web 服务
docker pull postgres:15-alpine                 # PostgreSQL 数据库
docker pull redis:6-alpine                     # Redis 缓存
docker pull langgenius/dify-sandbox:0.2.12     # 代码沙盒环境
docker pull langgenius/dify-plugin-daemon:0.1.1-local  # 插件守护进程
docker pull ubuntu/squid:latest                # SSRF 代理
docker pull nginx:latest                       # Nginx 反向代理
docker pull semitechnologies/weaviate:1.19.0   # 默认向量数据库 (Weaviate)

完整镜像

#!/bin/bash

# 最小化安装镜像(必需组件)
docker pull langgenius/dify-api:1.4.1
docker pull langgenius/dify-web:1.4.1
docker pull postgres:15-alpine
docker pull redis:6-alpine
docker pull langgenius/dify-sandbox:0.2.12
docker pull langgenius/dify-plugin-daemon:0.1.1-local
docker pull ubuntu/squid:latest
docker pull nginx:latest
docker pull semitechnologies/weaviate:1.19.0

# ----------------------------
# 可选组件(按需下载)
# ----------------------------

# 向量数据库备选方案
docker pull langgenius/qdrant:v1.7.3                  # Qdrant
docker pull pgvector/pgvector:pg16                    # PGVector
docker pull tensorchord/pgvecto-rs:pg16-v0.3.0        # PGVector.rs
docker pull ghcr.io/chroma-core/chroma:0.5.20         # Chroma
docker pull milvusdb/milvus:v2.5.0-beta               # Milvus
docker pull opensearchproject/opensearch:latest       # OpenSearch
docker pull opensearchproject/opensearch-dashboards:latest
docker pull opengauss/opengauss:7.0.0-RC1             # OpenGauss
docker pull myscale/myscaledb:1.6.4                   # MyScale
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.14.3
docker pull docker.elastic.co/kibana/kibana:8.14.3

# 其他数据库
docker pull oceanbase/oceanbase-ce:4.3.5.1-101000042025031818  # OceanBase
docker pull container-registry.oracle.com/database/free:latest # Oracle

# 文件处理
docker pull downloads.unstructured.io/unstructured-io/unstructured-api:latest  # Unstructured

# 基础设施
docker pull quay.io/coreos/etcd:v3.5.5               # Milvus 依赖
docker pull minio/minio:RELEASE.2023-03-20T20-16-18Z # Milvus 依赖
docker pull certbot/certbot                          # SSL 证书管理

将此脚本保存为 pull-dify-images.sh,运行 chmod +x pull-dify-images.sh && ./pull-dify-images.sh 即可下载所有镜像。

导出和导入镜像

方法一

  • 将镜像导出为 tar 文件
    docker save -o dify-images.tar langgenius/dify-api:1.4.1 langgenius/dify-web:1.4.1 postgres:15-alpine redis:6-alpine langgenius/dify-sandbox:0.2.12 langgenius/dify-plugin-daemon:0.1.1-local ubuntu/squid:latest nginx:latest semitechnologies/weaviate:1.19.0
    
  • 在目标服务器上导入镜像
    docker load -i dify-images.tar
    

方法二

  • 将镜像导出为 tar 文件
    docker save -o dify-api_1.4.1.tar langgenius/dify-api:1.4.1
    docker save -o dify-web_1.4.1.tar langgenius/dify-web:1.4.1
    docker save -o postgres_15-alpine.tar postgres:15-alpine
    docker save -o redis_6-alpine.tar redis:6-alpine
    docker save -o dify-sandbox_0.2.12.tar langgenius/dify-sandbox:0.2.12
    docker save -o dify-plugin-daemon_0.1.1-local.tar langgenius/dify-plugin-daemon:0.1.1-local
    docker save -o ubuntu-squid_latest.tar ubuntu/squid:latest
    docker save -o nginx_latest.tar nginx:latest
    docker save -o weaviate_1.19.0.tar semitechnologies/weaviate:1.19.0
    
  • 在目标服务器上导入镜像
    docker load -i dify-api_1.4.1.tar
    docker load -i dify-web_1.4.1.tar
    docker load -i postgres_15-alpine.tar
    docker load -i redis_6-alpine.tar
    docker load -i dify-sandbox_0.2.12.tar
    docker load -i dify-plugin-daemon_0.1.1-local.tar
    docker load -i ubuntu-squid_latest.tar
    docker load -i nginx_latest.tar
    docker load -i weaviate_1.19.0.tar
    

访问 Dify 控制台

在浏览器中访问 http://localhost 即可进入 Dify 控制台。

设置

模型提供商

  • 安装硅基流动插件

  • 设置 API Key

  • 设置系统模型

工作室

Chatbot

语音助手

创建工作流

工作流设置

预览

发布

知识库

工具

插件

参考资料

Updated: