【详细教程】如何在Ubuntu上本地部署Dify?

1 关于Dify

  • Dify 是一个开源的大语言模型(LLM)应用开发平台;
  • 可以简化和加速生成式AI应用的创建和部署;
  • 为开发者提供低代码/无代码的解决方案,同时支持高级定制化需求。

2 Dify核心功能

  • 多模型支持:

① 支持主流商业模型 (如 OpenAI GPT、Claude、DeepSeek、ChatGLM 等)及开源模型(如 Llama、Mistral); ② 提供 模型管理 功能,支持快速切换和自定义接入。

  • 应用类型:

聊天助手 :多轮对话交互(如客服机器人); 文本生成 :自动化创作、翻译、摘要等; Agent :任务分解、工具调用(如数据分析、API 集成); 工作流:可视化编排复杂流程(如条件分支、多节点任务)。

  • 关键技术组件:

RAG(检索增强生成): ① 支持文档上传、分块、向量化索引(如 PDF、Notion 同步) ; ② 提供混合检索(向量+全文搜索)和重排序优化。

Agent 框架: ① 支持 Function Calling 和 ReAct 推理模式,集成工具(如搜索、代码执行)。

  • 低代码开发:

① 通过可视化界面编排 Prompt、上下文和插件,无需深入编码; ② 提供模块化设计,如拖拽式工作流构建。

3 访问和使用

  • 可自行查阅Dify文档,这里不赘述

4 dify部署

  • 在 Ubuntu 上本地部署 Dify 可以按照多种方式,以下是通过 Docker Compose 进行部署的步骤,这是官方推荐的简单部署方式:

4.1 前提条件

  • 确保已安装 Docker 和 Docker Compose;
  • 推荐配置:2GB 以上内存,4 核 CPU。

4.2 安装 Docker 和 Docker Compose

python 复制代码
# 安装Docker
sudo apt update
sudo apt install -y docker.io

# 启动Docker服务
sudo systemctl start docker
sudo systemctl enable docker

# 安装Docker Compose
sudo apt install -y docker-compose

# 将当前用户添加到docker组(避免每次使用sudo)
sudo usermod -aG docker $USER

4.3 获取 Dify 源码

python 复制代码
# 克隆Dify仓库
git clone https://github.com/langgenius/dify.git

4.4 配置环境变量

  • 进入到如下目录:
python 复制代码
cd dify/docker
python 复制代码
# 复制环境变量示例文件
cp .env.example .env

4.5 docker卸载

如果需要,请卸载,如果不需要请跳过。

python 复制代码
# 卸载现有Docker
sudo apt purge -y docker.io docker-compose
sudo rm -rf /var/lib/docker /var/lib/containerd

4.6 docker安装

4.6.1 docker安装

python 复制代码
# 重新安装
sudo apt update
sudo apt install -y docker.io docker-compose

# 启动服务
sudo systemctl start containerd
sudo systemctl start docker

# 将当前用户添加到docker组(避免每次使用sudo)
sudo usermod -aG docker $USER

4.6.2 docker镜像源修改

  • 打开 Docker 的配置文件:
python 复制代码
sudo vim /etc/docker/daemon.json
  • 添加镜像加速配置(推荐使用多个):
python 复制代码
{
  "registry-mirrors": [
    "https://docker.xuanyuan.me",
    "https://docker.1ms.run"
  ]
}
  • 重启 Docker 服务:
python 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 验证是否生效:
python 复制代码
docker info | grep -A 10 -i registry

4.6.3 docker仍无法启动排查

  • 执行以下命令清理可能遗留的 PID 文件:
python 复制代码
sudo pkill dockerd
sudo rm -f /var/run/docker.pid
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart docker

检查是否有镜像路径写死在 docker-compose.yaml 文件中; 使用 sed 批量替换镜像地址(仅适用于明文配置):

python 复制代码
sed -i 's#registry-1.docker.io#docker.xuanyuan.me#g' docker-compose.yaml
  • 测试镜像源是否能访问:
python 复制代码
docker pull docker.xuanyuan.me/library/redis:6-alpine
docker pull docker.1ms.run/library/nginx:alpine

4.6.4 常见国内镜像源

玄元云、 1ms、 阿里云、 清华大学、 中科大

4.7 启动服务

python 复制代码
# 启动所有服务
docker-compose up -d

# 查看服务状态
docker-compose ps

5 访问 Dify

6 初始化管理员账号

  • 首次访问时,系统会引导创建管理员账号,按照提示完成设置即可。

常用命令: 停止服务:docker-compose down 查看日志:docker-compose logs -f 重启服务:docker-compose restart

相关推荐
老百姓懂点AI17 小时前
[微服务] Istio流量治理:智能体来了(西南总部)AI调度官的熔断策略与AI agent指挥官的混沌工程
人工智能·微服务·istio
芝士爱知识a17 小时前
2026年教资备考数字化生存指南:主流App深度测评与AI技术应用分析
人工智能·教资·ai教育·教育技术·教资面试·app测评·2026教资
AIArchivist17 小时前
攻坚肝胆疑难病例,AI成为诊疗决策的“智慧大脑”
人工智能
jake don17 小时前
GPU服务器搭建大模型指南
服务器·人工智能
JicasdC123asd17 小时前
【深度学习实战】基于Mask-RCNN和HRNetV2P的腰果智能分级系统_1
人工智能·深度学习
星爷AG I17 小时前
9-28 视觉工作记忆(AGI基础理论)
人工智能·计算机视觉·agi
陈天伟教授18 小时前
人工智能应用- 语言理解:07.大语言模型
人工智能·深度学习·语言模型
岱宗夫up18 小时前
机器学习:标准化流模型(NF)
人工智能·python·机器学习·生成对抗网络
程序猿阿伟18 小时前
《游戏AI训练模拟环境:高保真可加速构建实战指南》
人工智能·游戏
花月mmc18 小时前
CanMV K230 波形识别——整体部署(4)
人工智能·python·嵌入式硬件·深度学习·信号处理