[Dify] 使用 Docker 本地部署 Dify 并集成 Ollama 模型的详细指南

在 AI 应用快速发展的今天,开源项目如 Dify 正成为构建本地化 AI 应用的利器。通过 Dify,你可以轻松地集成不同的大语言模型(LLM),如 Ollama,并快速创建可交互的 AI 应用。本篇文章将带你一步步通过 Docker 在本地部署 Dify,并完成 Ollama 模型的集成配置。

一、准备工作:安装 Docker

在正式部署前,需要先确保本地环境已安装好 Docker。

  • 可前往 Docker 官网 下载适合你系统的 Docker Desktop;

  • 安装完成后,打开终端(Windows 用户可使用 CMD 或 PowerShell)执行 docker -v,验证是否成功安装。

二、获取并解压 Dify 项目文件

  1. 打开 Dify GitHub 仓库

  2. 点击 Code > Download ZIP 下载项目压缩包;

  3. 解压缩后,进入解压出的 dify 文件夹,再进入 docker 子目录。

三、通过 Docker Compose 启动服务

dify/docker 文件夹中,按以下步骤操作:

复制代码
# 启动终端并切换到当前目录
cd dify/docker

# 启动 Docker Compose
docker compose up -d

服务成功启动后,打开浏览器访问:

复制代码
http://127.0.0.1

首次访问会跳转到安装页面,设置管理员密码,即可进入管理后台。

四、解决配置文件版本问题(如有)

在部分环境中,可能会遇到配置文件中定义的镜像版本不可用的情况。这时需要:

  1. 打开 docker-compose.yml 文件;

  2. 找到 dify-apidify-web 两个服务;

  3. 将它们的镜像版本号修改为当前 GitHub 上最新的稳定版本。

例如:

复制代码
services:
  dify-api:
    image: langgenius/dify-api:latest

  dify-web:
    image: langgenius/dify-web:latest

保存文件后,重新运行 docker compose up -d 即可。

五、配置 Ollama 模型提供商

完成 Dify 部署后,我们来集成本地运行的 Ollama 模型:

1. 打开 Model Provider 页面

进入 Dify 后台,点击左侧导航栏的 Settings > Model Provider

2. 添加 Ollama 模型服务

  1. 点击 Add

  2. 在弹窗中选择 Ollama 作为模型提供商;

  3. 在模型类型中选择 LLM(对话用) ,另一种为 Embedding(嵌入用)

  4. 打开终端,运行 ollama list,复制想要集成的模型名称(如 llama3);

  5. 粘贴至 Model Name 输入框;

  6. 设置 Base URL

    • 如果 Dify 运行在 Docker 容器内,而 Ollama 运行在本地,则需使用:

      复制代码
      http://host.docker.internal:11434
  7. 保存配置。

3. 测试模型集成效果

配置完成后,你就可以在 Dify 中创建一个新应用,使用刚刚配置的模型来对话或执行任务了。

总结

通过本文你可以实现:

  • ✅ 使用 Docker 快速部署 Dify;

  • ✅ 修复可能出现的镜像版本问题;

  • ✅ 集成本地 Ollama 模型,实现 LLM 聊天功能。


如你有更进一步的自定义部署需求(如绑定域名、HTTPS 配置、多用户权限管理等),可继续深入研究 Dify 的官方文档和社区资源。如果你希望我继续扩展某部分内容,比如创建具体应用示例,也可以告诉我!

相关推荐
biter down15 小时前
5:GUI自动化等待机制
运维·python·自动化
明志数科15 小时前
数据标注质量评估:从指标体系到自动化质检的完整方案
运维·自动化
liux352815 小时前
K8s 排坑 01:Pod 一直 Pending 怎么办?
云原生·容器·kubernetes
光影少年16 小时前
前端浏览器自动化
运维·前端·前端框架·自动化
运维老郭16 小时前
Kubernetes Pod 从创建到运行全流程拆解:5 个阶段 + 排错实录
运维·云原生·kubernetes
广州灵眸科技有限公司16 小时前
瑞芯微(EASY EAI)RV1126B ubuntu系统SDK源码获取
linux·运维·ubuntu
万里侯16 小时前
Kubernetes多租户管理:实现资源隔离与安全的完整指南
微服务·容器·k8s
Web打印16 小时前
web打印控件,打印模板分散部署在各客户端本地,修改后需逐台更新,能否统一部署至服务器实现集中维护
运维·服务器
无相孤君16 小时前
我用 Docker + JunimoServer 搭了一个星露谷物语无头服,还顺手做了个本地管理面板
linux·游戏·docker·开源
爱吃龙利鱼17 小时前
ubuntu2026.04部署k8s1.36版本的傻瓜式教程(注:运行时为docker,网络插件为calico)
运维·网络·笔记·docker·云原生·kubernetes