CentOS 7中安装Dify

发布于:2025-03-05 ⋅ 阅读:(18) ⋅ 点赞:(0)

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)吧