这篇文章写给谁?想在公司内部搭一个能回答私有文档问题的机器人,但没花太多时间研究 RAG 细节的人。看完你能获得一套完整的可复现操作:从一台空服务器开始,部署 Dify,接入模型,建知识库,然后拿到一个能调用的 API。过程中我会把踩过的坑放在对应位置。

为什么选 Dify

Dify 在这个领域不算新项目,但热度一直很稳。它把一个 RAG 应用拆成了知识库、工作流、模型配置三个独立部分,每个环节都有界面可查。对我来说最大的价值是:不用先把 LangChain 那套概念学一遍,就能先跑通产品。

我这次用的是社区版,部署方式是 Docker Compose。如果你已经在用其他平台,也可以参考后面的 API 对接部分。

第一步:准备部署环境

建议准备一台 Linux 服务器,内存尽量给到 8 G 以上,硬盘至少留出 20 G。如果只做测试,本地虚拟机也可以。下面的命令都在 Ubuntu 上验证过,其他发行版差异不大。

先安装 Docker 和 docker compose 插件。


sudo apt update
sudo apt install docker.io docker-compose-v2

注意这边我不用 sudo 启动 docker 的话会权限不足,但下面的 Dify 部署命令建议不要随便加 sudo,原因后面说。

去 Dify 的 GitHub 发布页找到最新版本号,然后克隆仓库,也可以直接下载对应 release 的代码包。我习惯用 git 拉。


git clone https://github.com/langgenius/dify.git
cd dify/docker
cp .env.example .env

打开 .env,主要是确认几个常改的配置。EXPOSE_NGINX_PORT 控制外部访问端口,默认 3000。如果你的服务器 3000 被占了,改成别的。改完保存。

启动服务:


docker compose up -d

第一次启动要拉很多镜像,等几分钟。你可以用 docker compose ps 看状态,如果发现某个容器一直退出,用 docker compose logs 容器名 看具体日志。正常情况下,等所有容器都显示 running 或者 healthy,就能继续了。

界面截图描述:启动后 Docker 面板里的容器列表会有一堆服务,分别是 API、Worker、PostgreSQL、Redis、Nginx 等,不用一个个记,知道它们都是 Dify 的一部分就行。

第二步:初始化管理员账号

浏览器打开 http://你的服务器IP:3000。第一次访问会跳转到设置管理员页面,填邮箱、用户名、密码。这个账号就是本地管理员,不用验证邮箱。设置完会自动登录。

这里的界面很简单,就是标准的登录表单,没有多余选项,不截图也不影响理解。

第三步:配置模型供应商

没有模型,后续的检索增强生成跑不起来。进入右上角头像里的"设置",找到"模型供应商"。Dify 内置了几十种供应商