大家好我是木木,自从2022年11月30日OpenAI发布ChatGPT后,每年都有新的AI技术衍生,而2026年是Agent的落地元年。今天我们聊聊Dify的本地化部署。
一、了解下什么是Dify?
Dify是一个开源、可视化、本地一站式的LLM应用的低代码开发平台,核心不需要写大量代码,就可以快速搭建、部署AI应用,比如:聊天机器人、知识库问答,AI Agent智能体。
它可以做快速的AI应用搭建、部署,但是我们需要先进入它的平台才能操作。接下来我们进入Dify部署操作。
二、Dify部署前准备
1、如果是Windows系统,需要通过WSL安装Ubuntu系统,版本建议22以上。可参考下图

**原因:**Dify是需要依赖Docker运行,而Docker是基于Linux架构设计,在Windows系统有太多的不兼容性,会遇到太多坑。
2、需要在Ubuntu系统部署Docker。部署Docker可以参考下面的博客。
Docker基础篇------Ubuntu下Docker安装_ubuntu安装docker-CSDN博客
3、如果你的系统是Ubuntu系统,那么恭喜你可以跳过1,直接进入到2,即可。
三、Dify部署
打开浏览器,输入Dify的GitHub仓库地址:
地址:https://github.com/langgenius/dify/
或者直接点击链接:GitHub - langgenius/dify: Production-ready platform for agentic workflow development. · GitHub
注:下载有多种方式:本次提供2种:Git和ZIP压缩包
Git:需要下载Git软件安装才能使用。
ZIP:直接下载即可。
Git下载:
如下图:复制地址

打开git base命令行输入:
git clone https://github.com/langgenius/dify.git
由于github是外网的,一次下载不成功可以多尝试几次。

之后等待下载完即可,在对应的目录找到下载好的dify包。
ZIP下载:
直接点击zip包下载,解压即可。

解压后文件目录:

文件里面的内容如下:

如果需要下载历史版本:
1、打开页面后,下拉找到"release",点击,跳转页面。

2、找到对应版本,一直往下拉,找到""Assets",点击对应的Source code下载即可。

启动Dify前准备:
1、打开刚刚下载好的文件,进入Dify的docker目录下:

2、找到.env.example文件,复制一份,改名称为:.env

修改后结果如下图:

3、打开Ubuntu系统,进入到解压的dify文件下的docker目录。

通过ll -l 查看几点:1:有没有.env文件;2、有没有docker-compose.yaml文件;3、进入的目录是否正确。如果用windows系统wsl部署的对应盘符都在/mnt下

启动Dify
启动命令:docker-compose up -d
报错原因是docker-compose版本太低,如果遇到报错,可以升级也可以改用docker compose up -d
接下来就将开始进行漫长的等待时间,快的话10多分钟,如果慢的话30分钟以上也很正常,只要后面的蓝色字一直在变说明还在下载中,等待下载完。

注:第一次启动会需要很长时间,它需要去拉取很多的镜像文件到本地,最好自己配置下docker的镜像加速地址改成国内的镜像地址,要不在国内很容易下载失败。
四、Dify页面访问
1、打开浏览器输入: http://localhost/install
首次登录会很慢,也需要等待。如果等待超过5分钟还没有进入页面,看下面的问题一。

2、第一次需要设置你的dify邮箱和密码
邮箱和密码分别是大家后续登录的用户名和密码。

3、到这里我们Dify部署完成,再见各位,接下来属于大家慢慢享受Dify的时光。

五、启动遇到的问题
1、Container docker-db_postgres-1 检查失败,需要特别注意,它是Dify的数据库,没有它Dify的Web也会无法启动或者连接失败,Dify所有功能都无法使用。

解决方案:
因为前面我们将Dify放在Windows D盘(mnt/d),可能让Linux容器无法正确设置权限,需要将Dify目录(mnt/d)搬到WSL内部目录,解决权限问题。
bash
# 1.停止当前服务
docker compose down -v
# 2.创建WSL内部目录
mkdir -p /mnt/dify
# 3.把Dify搬迁到新创建的WSL目录
cp -r /mnt/d/docker/dify-1.14.0-rc1 /mnt/dify
# 4.进入新目录
cd /mnt/dify/dify-1.14.0-rc1/dify-1.14.0-rc1/docker
# 5.赋予dify-1.14.0-rc1目录下所有文件777权限
chmod -R 777 /mnt/dify/dify-1.14.0-rc1/dify-1.14.0-rc1/
# 6.重新启动Dify容器
docker compose up -d