Dify 怎么安装:Docker Compose 部署步骤与常见卡点

Dify 是开源自托管 AI 应用平台,可用于搭建工作流、智能体和聊天应用。

Dify 官方在 2026 年 10 月 29 日更新了部署文档,把 Docker Compose、源码运行、Kubernetes 和宝塔面板等路径集中到同一入口。现在正适合重新梳理安装流程:多数用户只需要 Docker Compose,源码部署主要面向准备修改平台代码的人,而云端版本则不需要本地安装。

先选对安装方式

Dify 官方文档首页把运行方式分为 Dify Cloud 与 Self-Host。前者由官方托管,含免费 Sandbox,不需要在电脑上安装;后者是开源 Community Edition,需要在自己的服务器或电脑上运行。

运行方式 适合谁 本地准备 后续维护
Dify Cloud 想先试用、不想运维服务器 无 使用官方托管服务
Docker Compose 大多数自托管用户 Docker、Docker Compose、可用磁盘 自行升级与备份
源码运行 需要修改或调试 Dify 平台代码 Docker、Compose、Git 及开发工具链 需要自行处理依赖与构建
Kubernetes 企业生产环境 Kubernetes 集群及相应部署配置 由集群负责调度和扩缩容

这是按官方部署入口做的适用性对照,不是性能排名。只为使用 Dify 搭建应用时,直接选 Docker Compose;需要改平台源码时再进入部署 Dify;只是想立即体验,则直接访问 Dify Cloud。

费用也要分开看:Community Edition 的代码可以自行部署,但调用模型 API、提供向量存储或使用云端增值能力时,仍可能产生对应服务费用。

部署前检查这三项

  1. 安装 Docker,并确认引擎正在运行。 在 macOS 或 Linux 上安装 Docker Engine;macOS 使用 Docker Desktop。执行 docker version,能同时看到 Client 和 Server,才说明客户端已连接到 Docker 引擎。

  2. 确认 Compose 可用。 执行:

docker compose version

如果这里提示 docker compose 不可用,说明当前安装缺少 Compose 插件或命令格式不同。旧版 Compose 可能使用 docker-compose,不要同时照抄两套命令,应先以本机版本输出为准。

  1. 准备访问地址和空闲端口。 默认安装通过浏览器访问 http://localhost/install 完成初始化。提前确认常用端口没有被其他程序占用;如果本机已经运行过 Dify,先执行 docker compose ps 查看已有容器状态。

官方源码部署文档给出的最低系统要求是 2 核 CPU、4 GiB 内存;macOS 需使用 macOS 10.14 或更高版本,Docker Desktop 的虚拟机至少分配 2 个 vCPU 和 8 GB 初始内存。详见本地源码运行说明。

按这四步完成 Docker Compose 安装

1. 获取部署文件

在终端进入准备存放 Dify 的目录,然后执行:

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

这一步下载的是官方 Dify GitHub 仓库。如果提示 git: command not found,先安装 Git;如果下载卡住,检查 GitHub 仓库是否能够正常打开,并改用稳定网络重试。

2. 创建环境变量文件

cp .env.example .env

.env 是 Docker Compose 读取环境变量的配置文件。复制后不要直接改文件名,也不要把包含密钥的 .env 上传到公开仓库。首次体验可先保留默认配置;需要修改数据库、存储、模型服务或访问限制时,再编辑 .env 中对应变量。

3. 启动全部服务

docker compose up -d

-d 表示让容器在后台运行。首次启动需要拉取镜像并初始化数据库、向量数据库和各个应用服务,等待时间取决于网络与机器性能。命令返回后不要立刻反复重启,继续查看容器状态。

4. 检查服务并打开初始化页

docker compose ps

重点看服务是否处于运行或健康状态,不要只看容器名称已经出现。随后在浏览器打开:

http://localhost/install

页面应出现创建管理员账号的初始化界面。填写邮箱、用户名和密码后进入 Dify 主界面,再到设置中配置模型供应商,并创建第一个聊天应用。服务器部署时,应把 localhost 换成服务器 IP 或域名,同时检查反向代理、防火墙和 HTTPS 配置。

启动失败时先看这三个位置

容器反复退出

先执行:

docker compose ps
docker compose logs --tail=100

docker compose ps 用于查看容器当前状态和退出情况;docker compose logs --tail=100 会显示末尾 100 行日志。优先寻找包含 failed、exited、unhealthy 或 permission denied 的行,并记录它前面第一次出现的错误。第一处异常通常才是根因,后面的容器退出可能只是连锁反应。

如果是内存不足导致服务退出,应先释放内存,并按照本地源码文档预留足够资源,再重新运行 docker compose up -d。不要只重复启动;内存、磁盘或端口问题不解决,容器仍会再次退出。

页面打不开

先确认浏览器访问的地址与端口是否和 .env 一致,然后执行 docker compose ps。容器正常运行但页面无法连接时,依次检查:

  • 本机访问是否使用 http://localhost/install;
  • 服务器访问是否使用实际 IP 或域名;
  • 防火墙是否放行对应端口;
  • 反向代理是否把请求转发到正确的容器端口;
  • 配置了 HTTPS 时,证书和代理头是否正确。

如果页面能打开但初始化失败,在浏览器开发者工具中查看失败请求的状态码,再结合对应服务日志定位。仍无法判断时,把完整日志和 docker compose ps 输出整理后提交到Dify 官方 Issues,不要只提交最后一行错误。

启动成功但模型不可用

Dify 能打开不代表模型已经接通。进入“设置 → 模型供应商”,填写对应供应商的 API Key、接口地址和模型名称,然后执行一次模型对话测试。API Key 属于敏感信息,不要贴进公开 Issue。

若工作流报模型不可用,先在模型供应商设置中测试单模型,再检查工作流引用的模型是否被删除、停用或改名。这里应先修模型连接,再调工作流,否则反复修改提示词通常不会解决连接错误。

怎么确认安装成功

完成后应同时观察到三项结果:

  1. docker compose ps 中核心服务显示为运行或健康状态,而不是持续 Exited;
  2. 浏览器打开 http://localhost/install 能看到初始化页面,完成后可以进入工作区;
  3. 在模型供应商页面完成连接测试,并成功创建、预览和发布一个应用。

如果只看到 Docker 镜像已下载,不能据此判断安装完成;容器启动、Web 页面可访问、模型可调用是三个不同检查点。

升级、备份与官方入口

升级前先备份 .env 和持久化数据目录,再获取仓库的新版本并重新启动服务。不要只替换部分容器,因为数据库迁移和应用代码可能需要保持同一版本。具体升级与备份方式应以当前仓库中的 Compose 文件和部署文档为准。

Dify 的持续更新入口包括官方文档中心、官方文档索引和GitHub 仓库。遇到启动、Docker 或集成问题时,优先搜索仓库 Issues;需要向官方确认部署状态时,在 Issue 中附上操作系统、Docker 版本、失败命令和经过脱敏的日志,避免提交密码、API Key 或其他密钥。

参考来源

评论区

0 条评论

登录后可评论。

猫仔 81 阅读