Dify 是一个开源的 LLM 应用开发平台。其直观的界面结合了 AI 工作流、RAG 管道、Agent、模型管理、可观测性功能等,让您可以快速从原型到生产。尤其是我们本地部署DeepSeek等大模型时,会需要用到Dify来帮我们快捷的开发和应用。
大家可以参考学习它的中文文档:https://github.com/langgenius/dify/blob/main/README_CN.md
一、系统要求
在安装 Dify 之前,请确保您的机器满足以下最低系统要求:
- CPU >= 2 Core
- RAM >= 4 GiB
二、安装 Dify
1.安装Docker 和 Docker Compose
安装开始之前,建议大家有且只考虑Docker环境来启动Dify,因为逐个安装环境的工作量非常大。安装方法可以参照我上一篇文章:CentOS 7 中安装 Docker和Docker Compose-CSDN博客
2. 克隆 Dify 仓库
从 Dify 的 GitHub 仓库克隆项目代码到本地:
git clone https://github.com/langgenius/dify.git
cd dify
这一步可能会失败,原因是访问github的网络不稳定导致的,多试几次吧。
3.快速启动
启动 Dify 服务器的最简单方法是运行我们的 docker-compose.yml 文件。
cd docker
cp .env.example .env
docker compose up -d
docker compose up -d会根据docker-compose.yml 文件中的配置,下载所需的 Docker 镜像并启动相关容器。
4.修改源(最关键的一步)
在安装过程中,部分同学可能会在执行docker compose up -d时遇到问题:
[root@localhost docker]# docker compose up -d
[+] Running 10/10
✘ worker Error context canceled 15.0s
✘ redis Error context canceled 15.0s
✘ web Error Get "https://registry-1.docker.io/v2/": context deadline ... 15.0s
✘ nginx Error Get "https://registry-1.docker.io/v2/": context deadlin... 15.0s
✘ plugin_daemon Error context canceled 15.0s
✘ db Error Get "https://registry-1.docker.io/v2/": net/http: request ... 15.0s
✘ ssrf_proxy Error context canceled 15.0s
✘ api Error Get "https://registry-1.docker.io/v2/": dial tcp 199.59.1... 15.0s
✘ weaviate Error Get "https://registry-1.docker.io/v2/": dial tcp 199... 15.0s
✘ sandbox Error Get "https://registry-1.docker.io/v2/": net/http: req... 15.0s
Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
这是在尝试从 Docker 官方镜像源下载软件包时,网络超时。国内访问 Docker Hub 有时会出现网络不稳定的状况,你可以
4.1.配置国内的 Docker 镜像源
sudo vi /etc/docker/daemon.json
4.2.添加如下内容
{
"registry-mirrors":
[
"https://docker.1panel.live",
"https://docker.nju.edu.cn",
"https://registry.cn-hangzhou.aliyuncs.com",
"https://mirror.ccs.tencentyun.com",
"https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com",
"https://docker.mirrors.ustc.edu.cn",
"https://dockerproxy.com",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
补充下,以上镜像源有些可能只会对一部分软件包有用,对另外一些软件包无效。所以呢,我们就数量凑质量,多凑一些镜像源 。最终凑齐所有需要的软件包。至于镜像源的地址网上有很多,搜来能用就行。截止到本稿日,以上镜像源是可以下载所有需要的软件包了。
4.3.重启Docker后生效
sudo systemctl restart docker
4.4.确认 Docker 镜像源配置生效
docker info | grep "Registry Mirrors"
如果输出显示了你配置的镜像源,说明配置已生效;若没有显示,需要再次检查 /etc/docker/daemon.json
文件的配置以及是否正确重启了 Docker 服务。
4.5.再来一次
[root@localhost docker]# docker compose up -d
[+] Running 80/32
✔ redis Pulled 165.1s
✔ db Pulled 179.9s
✔ ssrf_proxy Pulled 97.0s
✔ sandbox Pulled 98.9s
✔ weaviate Pulled 54.4s
✔ nginx Pulled 158.9s
✔ api Pulled 182.6s
✔ web Pulled 164.5s
✔ worker Pulled 182.6s
✔ plugin_daemon Pulled 112.0s
[+] Running 12/12
✔ Network docker_default Created 0.5s
✔ Network docker_ssrf_proxy_network Created 0.1s
✔ Container docker-redis-1 Started 7.2s
✔ Container docker-sandbox-1 Started 7.2s
✔ Container docker-weaviate-1 Started 7.2s
✔ Container docker-ssrf_proxy-1 Started 7.5s
✔ Container docker-plugin_daemon-1 Started 7.2s
✔ Container docker-db-1 Started 7.3s
✔ Container docker-web-1 Started 7.3s
✔ Container docker-worker-1 Started 6.8s
✔ Container docker-api-1 Started 6.7s
✔ Container docker-nginx-1 Started 7.7s
发现成功咯
三、自定义配置
如果您需要自定义配置,请参考 .env.example 文件中的注释,并更新 .env 文件中对应的值。此外,您可能需要根据您的具体部署环境和需求对 docker-compose.yaml 文件本身进行调整,例如更改镜像版本、端口映射或卷挂载。完成任何更改后,请重新运行 docker-compose up -d。您可以在此处找到可用环境变量的完整列表
四、验证安装
判断安装成功的直接标准,肯定是能访问Dify的控制台啦
直接浏览器输入Dify服务器的ip即可,默认端口80,比如http://localhost
首次登录需要设置管理员账号密码
恭喜你,出现这个界面,代表Dify我们安装成功啦
我们设置完管理员账号后,进入控制台看看,并试着添加一个空白应用
好啦,我们可以添加deepseek,gpt等大模型,并研发丰富多彩的AI智能体(Agent)吧