【详细教程】如何在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

相关推荐
墨染天姬2 小时前
【AI】端侧AIBOX可以部署哪些智能体
人工智能
AI成长日志2 小时前
【Agentic RL】1.1 什么是Agentic RL:从传统RL到智能体学习
人工智能·学习·算法
2501_948114242 小时前
2026年大模型API聚合平台技术评测:企业级接入层的治理演进与星链4SAPI架构观察
大数据·人工智能·gpt·架构·claude
小小工匠2 小时前
LLM - awesome-design-md 从 DESIGN.md 到“可对话的设计系统”:用纯文本驱动 AI 生成一致 UI 的新范式
人工智能·ui
黎阳之光3 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
小超同学你好3 小时前
面向 LLM 的程序设计 6:Tool Calling 的完整生命周期——从定义、决策、执行到观测回注
人工智能·语言模型
智星云算力3 小时前
本地GPU与租用GPU混合部署:混合算力架构搭建指南
人工智能·架构·gpu算力·智星云·gpu租用
jinanwuhuaguo3 小时前
截止到4月8日,OpenClaw 2026年4月更新深度解读剖析:从“能力回归”到“信任内建”的范式跃迁
android·开发语言·人工智能·深度学习·kotlin
xiaozhazha_3 小时前
效率提升80%:2026年AI CRM与ERP深度集成的架构设计与实现
人工智能
枫叶林FYL3 小时前
【自然语言处理 NLP】7.2.2 安全性评估与Constitutional AI
人工智能·自然语言处理