前置条件:
仅列出本人的具体部署情况,以供参考,不作为部署的必要条件。- 电脑配置情况:
| 配置项 | 参数详情 |
|---|---|
| 型号名称 | MacBook Pro |
| 型号标识符 | MacBookPro17,1 |
| 芯片架构 | Apple M1 芯片 |
| CPU核心配置 | 8核(4性能核 + 4能效核) |
| 统一内存 | 16GB 高速统一内存 |
| 磁盘 | 剩余可用100G |
- Dify版本:0.15.3。别问为啥不是最新版的1.0.0,最新版有坑,后面会说
- Docker版本:
- docker desktop 4.38.0
- docker Engine: 27.5.1
可能遇到的坑
在开始前,先放出一些坑,如果你部署过程恰好也遇到了如下的坑,可以参考:dify最新版本1.0.0的坑(我称之为第一坑)
截止3.6日,dify社区开源最新版是1.0.0版本,但是此版本有坑,如果你不幸刚好也是部署了此版本,前置条件:
仅列出本人的具体部署情况,以供参考,不作为部署的必要条件。- 电脑配置情况:
| 配置项 | 参数详情 |
|---|---|
| 型号名称 | MacBook Pro |
| 型号标识符 | MacBookPro17,1 |
| 芯片架构 | Apple M1 芯片 |
| CPU核心配置 | 8核(4性能核 + 4能效核) |
| 统一内存 | 16GB 高速统一内存 |
| 磁盘 | 剩余可用100G |
- Dify版本:0.15.3。别问为啥不是最新版的1.0.0,最新版有坑,后面会说
- Docker版本:
- docker desktop 4.38.0
- docker Engine: 27.5.1
可能遇到的坑
在开始前,先放出一些坑,如果你部署过程恰好也遇到了如下的坑,可以参考:dify最新版本1.0.0的坑(我称之为第一坑)
截止3.6日,dify社区开源最新版是1.0.0版本,但是此版本有坑,如果你不幸刚好也是部署了此版本,那么恭喜你,大概率在部署完成后会遇到各种问题,包括但不限于:- 添加大模型的api key的报错,比如:接口报Internal server error或类似这样的:
总之,个人感觉可能1.0.0的版本还不怎么稳定,这也是为啥我降级到0.15.3的原因。
docker镜像拉取不成功:
由于众所知之的原因,docker镜像拉取不成功的概率比较大,这部分没啥好解释的,直接上车配置docker镜像源,截止3.6日本人实践还可以用的镜像源如下:"https://docker.1ms.run",
"https://hub.rat.dev",
"https://docker.1panel.live",
"https://hub.rat.dev",
"https://proxy.1panel.live",
"https://ghcr.nju.edu.cn",
"https://docker.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.rainbond.cc",
"https://registry.cn-shenzhen.aliyuncs.com",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://mirror.baidubce.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.nju.edu.cn",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.jsdelivr.fyi",
"https://docker-cf.registry.cyou"
我是直接在docker desktop里面配置的:
配置完成别忘了重启下docker,然后终端输入:docker info,能够看到如下配置已生效即可。
dify源码克隆不了的问题:
如果你觉得这是一个问题,不妨直接下载源码(如下图),或者走[gitee](about:blank)添加大模型的问题
具体可以参考下文的大模型配置部分,这里不再赘述。为啥要本地部署dify
简单理解:私密性、个性化、装杯用🐶。。。综合来看,可能基于以下原因:
- 数据隐私:处理敏感数据时避免云端传输风险(如金融报告翻译场景)
- 定制开发:支持修改工作流节点(如优化翻译助手的术语识别模块)
- 成本优化:长期使用可降低API调用费用(尤其大模型高频调用场景)
- 混合部署:无缝集成本地模型(如Ollama部署的Llama 3)
下载docker
我这里用的官网下载最新[docker desktop客户端](https://www.docker.com/),直接下载即可。选择合适自己机子的版本,我这里选择这个:
下载之后是一个dmg包,直接双击安装即可,安装完成打开界面类似下面:
验证是否安装成功,终端执行:docker --version
看到如下版本信息
如果你是其他系统,可以参考如下的方式,具体不展开:
| 系统 | 安装命令 |
|---|---|
| Ubuntu | sudo apt-get install docker.io docker-compose |
| CentOS | sudo yum install docker-ce && curl -L docker-compose |
| Windows | 要求WSL 2,通过winget install Docker.DockerDesktop安装 |
下载dify源码
如果从github上直接克隆源码不成功或速度较慢,可以直接在上面下载源码包。我比较喜欢从tags这里进去下载:
这里选择0.15.3版本:
下载完成后得到源码包:
解压出来
运行本地dify
拉取docker镜像
进入上面获取的dify源码目录的docker目录中,进行以下三步操作:cd dify-0.15.3/docker # 关键目录
cp .env.example .env # 复制环境变量模板
docker compose up -d # 后台启动docker,会自动拉取镜像
过程会有点长,或出现拉取失败的情况,如果遇到拉取失败,一般都是docker镜像源问题,请参考上面的坑的解决方案,正常情况会看到如下:
等待镜像拉取完成后自动启动相关的镜像:
到这一步,则基本部署成功了。。。。
本地访问本地访问
浏览器中输入:http://localhost首次进入会要设置管理员账号密码啥的,随便设置一个登录,然后就可以看到类似如下界面:
到这一步,基本就算部署成功了。。。。
配置大模型
部署成功之后,第一步一般要设置一些大模型,dify支持基本目前主流的大模型,具体位置从右上角用户头像设置进入:下面将以集成本地deepseek和线上的其他大模型为例,简单设置两个大模型,其他的都差不多。
集成本地deepseek
前置条件:
+ 要集成本地deepseek的前提是本机部署了deepseek,具体怎么部署,详见本人另一个文档:[如何把DeepSeek"娶"回家?一份充满求生欲的本地部署指南](https://zhuanlan.zhihu.com/p/28197422815)。 + 进入dify源码的docker目录下,修改.env配置文件,在文件最后两行加上以下两句:# 启用自定义模型
CUSTOM_MODEL_ENABLED=true
# 指定 Ollama 的 API 地址(根据部署环境调整 IP)
OLLAMA_API_BASE_URL= http://host.docker.internal:11434
修改完之后终端在docker目的里面执行docker重启命令生效:
docker resatrt
- 本地的deepseek得是启动的,验证方法:浏览器访问:http://localhost:11434,看到如下界面:
否则在终端执行ollama启动服务命令:ollama serve
添加自定义模型:
以上条件具备之后,就可以从供应商列表中找到ollama,点击添加大模型:会弹出如下弹窗,然后填入以下信息保存:
需要特别说明:
+ 模型名称填自己本机部署的deepseek版本,比如我的是r1:8b版本的,我就填了:deepseek-r1:8b,不知道该填什么的,可以再终端运行:ollama list命令,然后复制:- 基础URL地址请直接填写:host.docker.internal:11434
为了辛福生活,请不要填写:http://localhost:11434 或 http://127.0.0.1:11434等地址,原因大概是dify是采用docker部署的,docker有自己的url路由策略,所以就按照他的这个来就好了,不然会报各种奇怪问题
集成线上的其他大模型
首先得找到对应的供应商,比如线上deepseek,然后点击设置:进入ds开放平台官网,申请对应的大模型api key,填入:
这里需要注意两点:
- 跳转deepseek开放平台官网如果登录时验证码一直发送不成功,请检查下浏览器是否登录过deepseek对话页面,如果是,请退出后再试
- deepseek开放平台如果余额为0的话,添加时可能会报一个402的验证失败,此时需要冲点值,比如我就冲了10块钱然后验证通过了:
设置系统模型
以上两步添加模型的方式大同小异,对于其他的模型也是如此。添加完成之后,就可以设置系统要使用的模型了:dify后续使用
部署dify的目的是为了使用它。总体目标在此平台上建自己的对话,agent,工作流等智能体应用:
还可以将自己的本地知识库导入,结合大模型,创造更加符合自身业务的智能体:
内部也内置了一些工具或可以自己添加一些工具,以供创建的智能体调用等:
总结
总体来说:dify就是一个可以自己YY自己需要AI小工具的平台,后续详细的使用,待深入体验后再分享,也欢迎各位大神留言分享。最后,本文主要介绍本地部署dify的方法和一些坑的解决方案,如有更好的方案也欢迎评论留言,共勉之。 那么恭喜你,大概率在部署完成后会遇到各种问题,包括但不限于:
- 添加大模型的api key的报错,比如:接口报Internal server error或类似这样的:
总之,个人感觉可能1.0.0的版本还不怎么稳定,这也是为啥我降级到0.15.3的原因。
docker镜像拉取不成功:
由于众所知之的原因,docker镜像拉取不成功的概率比较大,这部分没啥好解释的,直接上车配置docker镜像源,截止3.6日本人实践还可以用的镜像源如下:"https://docker.1ms.run",
"https://hub.rat.dev",
"https://docker.1panel.live",
"https://hub.rat.dev",
"https://proxy.1panel.live",
"https://ghcr.nju.edu.cn",
"https://docker.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.rainbond.cc",
"https://registry.cn-shenzhen.aliyuncs.com",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://mirror.baidubce.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.nju.edu.cn",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.jsdelivr.fyi",
"https://docker-cf.registry.cyou"
我是直接在docker desktop里面配置的:
配置完成别忘了重启下docker,然后终端输入:docker info,能够看到如下配置已生效即可。
dify源码克隆不了的问题:
如果你觉得这是一个问题,不妨直接下载源码(如下图),或者走[gitee](about:blank)添加大模型的问题
具体可以参考下文的大模型配置部分,这里不再赘述。为啥要本地部署dify
简单理解:私密性、个性化、学习、装杯用🐶。。。综合来看,可能基于以下原因:
- 数据隐私:处理敏感数据时避免云端传输风险(如金融报告翻译场景)
- 定制开发:支持修改工作流节点(如优化翻译助手的术语识别模块)
- 成本优化:长期使用可降低API调用费用(尤其大模型高频调用场景)
- 混合部署:无缝集成本地模型(如Ollama部署的Llama 3)
下载docker
我这里用的官网下载最新[docker desktop客户端](https://www.docker.com/),直接下载即可。选择合适自己机子的版本,我这里选择这个:
下载之后是一个dmg包,直接双击安装即可,安装完成打开界面类似下面:
验证是否安装成功,终端执行:docker --version
看到如下版本信息
如果你是其他系统,可以参考如下的方式,具体不展开:
| 系统 | 安装命令 |
|---|---|
| Ubuntu | sudo apt-get install docker.io docker-compose |
| CentOS | sudo yum install docker-ce && curl -L docker-compose |
| Windows | 要求WSL 2,通过winget install Docker.DockerDesktop安装 |
下载dify源码
如果从github上直接克隆源码不成功或速度较慢,可以直接在上面下载源码包。我比较喜欢从tags这里进去下载:
这里选择0.15.3版本:
下载完成后得到源码包:
解压出来
运行本地dify
拉取docker镜像
进入上面获取的dify源码目录的docker目录中,进行以下三步操作:cd dify-0.15.3/docker # 关键目录
cp .env.example .env # 复制环境变量模板
docker compose up -d # 后台启动docker,会自动拉取镜像
过程会有点长,或出现拉取失败的情况,如果遇到拉取失败,一般都是docker镜像源问题,请参考上面的坑的解决方案,正常情况会看到如下:
等待镜像拉取完成后自动启动相关的镜像:
到这一步,则基本部署成功了。。。。
本地访问本地访问
浏览器中输入:http://localhost首次进入会要设置管理员账号密码啥的,随便设置一个登录,然后就可以看到类似如下界面:
到这一步,基本就算部署成功了。。。。
配置大模型
部署成功之后,第一步一般要设置一些大模型,dify支持基本目前主流的大模型,具体位置从右上角用户头像设置进入:下面将以集成本地deepseek和线上的其他大模型为例,简单设置两个大模型,其他的都差不多。
集成本地deepseek
前置条件:
+ 要集成本地deepseek的前提是本机部署了deepseek,具体怎么部署,详见本人另一个文档:[如何把DeepSeek"娶"回家?一份充满求生欲的本地部署指南](https://zhuanlan.zhihu.com/p/28197422815)。 + 进入dify源码的docker目录下,修改.env配置文件,在文件最后两行加上以下两句:# 启用自定义模型
CUSTOM_MODEL_ENABLED=true
# 指定 Ollama 的 API 地址(根据部署环境调整 IP)
OLLAMA_API_BASE_URL= http://host.docker.internal:11434
修改完之后终端在docker目的里面执行docker重启命令生效:
docker resatrt
- 本地的deepseek得是启动的,验证方法:浏览器访问:http://localhost:11434,看到如下界面:
否则在终端执行ollama启动服务命令:ollama serve
添加自定义模型:
以上条件具备之后,就可以从供应商列表中找到ollama,点击添加大模型:会弹出如下弹窗,然后填入以下信息保存:
需要特别说明:
+ 模型名称填自己本机部署的deepseek版本,比如我的是r1:8b版本的,我就填了:deepseek-r1:8b,不知道该填什么的,可以再终端运行:ollama list命令,然后复制:- 基础URL地址请直接填写:host.docker.internal:11434
为了辛福生活,请不要填写:http://localhost:11434 或 http://127.0.0.1:11434等地址,原因大概是dify是采用docker部署的,docker有自己的url路由策略,所以就按照他的这个来就好了,不然会报各种奇怪问题
集成线上的其他大模型
首先得找到对应的供应商,比如线上deepseek,然后点击设置:进入ds开放平台官网,申请对应的大模型api key,填入:
这里需要注意两点:
- 跳转deepseek开放平台官网如果登录时验证码一直发送不成功,请检查下浏览器是否登录过deepseek对话页面,如果是,请退出后再试
- deepseek开放平台如果余额为0的话,添加时可能会报一个402的验证失败,此时需要冲点值,比如我就冲了10块钱然后验证通过了:
设置系统模型
以上两步添加模型的方式大同小异,对于其他的模型也是如此。添加完成之后,就可以设置系统要使用的模型了:dify后续使用
部署dify的目的是为了使用它。总体目标在此平台上建自己的对话,agent,工作流等智能体应用:
还可以将自己的本地知识库导入,结合大模型,创造更加符合自身业务的智能体:
内部也内置了一些工具或可以自己添加一些工具,以供创建的智能体调用等:
总结
总体来说:dify就是一个可以自己YY自己需要AI小工具的平台,后续详细的使用,待深入体验后再分享,也欢迎各位大神留言分享。最后,本文主要介绍本地部署dify的方法和一些坑的解决方案,如有更好的方案也欢迎评论留言,共勉之。