Dify Docker Compose 部署教程(最新版,零基础安装)
它支持聊天机器人、AI 工作流、知识库、Agent、RAG 等能力,并且完全支持私有化部署。相比自己从零开发,一个小时内就能拥有一套类似 ChatGPT 的 AI 平台。
而官方最推荐的安装方式,就是 Docker Compose。
本文将从环境准备到启动,再到常见问题,一步一步带你完成 Dify 的部署。
为什么推荐 Docker Compose?
Dify 并不是一个单独的程序。
完整运行时需要多个服务协同工作,例如:
Web 前端
API 服务
PostgreSQL
Redis
Nginx
Sandbox
插件服务(新版)
向量数据库(根据版本不同)
如果一个个安装,不仅麻烦,升级也容易出问题。
Docker Compose 可以一次启动所有服务:
Docker Compose
│
├── Nginx
├── API
├── Web
├── Worker
├── PostgreSQL
├── Redis
├── Sandbox
└── Plugin Daemon
所有服务一起管理,部署和维护都会轻松很多。
部署前准备
建议服务器配置至少:
配置推荐CPU2 Core 以上内存4GB(建议 8GB)磁盘30GB+ SSD系统Ubuntu 22.04 / Debian 12安装 Docker:
docker --version
例如:
Docker version 28.x.x
安装 Docker Compose:
docker compose version
注意新版已经使用:
docker compose
而不是以前的:
docker-compose
第一步:下载 Dify
进入工作目录:
mkdir ~/dify
cd ~/dify
克隆官方仓库:
git clone https://github.com/langgenius/dify.git
进入 Docker 部署目录:
cd dify/docker
目录结构类似:
docker/
docker-compose.yaml
.env.example
volumes/
nginx/
middleware/
第二步:配置环境变量
复制配置文件:
cp .env.example .env
一般情况下,大部分配置可以直接使用默认值。
如果需要连接自己的模型,可以修改:
OPENAI_API_KEY=
OPENAI_API_BASE=
例如接入兼容 OpenAI API 的模型服务,只需要填写对应的接口地址和 API Key 即可。
如果准备使用 Ollama,也可以后续在 Dify 后台直接添加模型,不一定需要修改 .env。
第三步:启动 Dify
执行:
docker compose up -d
第一次启动会下载多个镜像,时间可能需要几分钟。
可以查看启动状态:
docker compose ps
正常情况下会看到类似:
NAME STATUS
dify-api Up
dify-web Up
dify-db Up
dify-redis Up
dify-nginx Up
dify-worker Up
dify-plugin-daemon Up
dify-sandbox Up
说明所有服务已经启动成功。
第四步:访问 Dify
默认访问地址:
http://服务器IP
如果修改了端口,例如:
ports:
- "8080:80"
则访问:
http://服务器IP:8080
第一次打开时,需要创建管理员账号。
填写:
用户名
邮箱
密码
完成后即可登录后台。
第五步:配置模型
Dify 默认不会自带任何大模型。
进入:
Settings
→ Model Provider
可以添加:
OpenAI
Azure OpenAI
Anthropic Claude
Google Gemini
DeepSeek
Qwen
Moonshot
OpenRouter
Ollama
OpenAI Compatible API
填写对应的 API Key 后即可开始创建应用。
如果使用本地 Ollama,需要填写:
http://服务器IP:11434
如果 Dify 和 Ollama 都运行在 Docker 中,请确保两者网络互通,不要直接使用 localhost,否则容器内无法访问宿主机上的 Ollama 服务。
查看日志
如果启动失败,可以查看日志:
查看全部:
docker compose logs
查看 API:
docker compose logs api
实时查看:
docker compose logs -f
定位问题会方便很多。
常用命令
停止:
docker compose down
启动:
docker compose up -d
重启:
docker compose restart
更新镜像:
git pull
docker compose pull
docker compose up -d
查看运行状态:
docker compose ps
数据存储位置
Docker Compose 默认会将数据库、Redis 和上传文件保存在数据卷(Volumes)中。
因此:
重启服务器不会丢失数据。
升级 Dify 一般也不会影响已有应用、知识库和聊天记录。
如果需要迁移服务器,建议同时备份:
PostgreSQL 数据
上传文件目录
.env配置文件
常见问题
1. 页面打不开
检查服务是否启动:
docker compose ps
如果有服务处于 Exited 状态,再查看对应日志:
docker compose logs api
另外,也要确认服务器防火墙和云平台安全组已经放行 HTTP 端口(如 80 或 8080)。
2. 拉取镜像失败
如果网络较慢,可以:
配置 Docker 镜像加速器。
提前拉取镜像。
在网络环境较好的服务器上部署。
3. API 无法调用模型
通常需要检查以下几点:
API Key 是否正确。
API Base URL 是否填写正确。
模型名称是否存在。
网络是否能够访问模型服务。
如果使用 Ollama,请确认:
curl http://服务器IP:11434/api/tags
能够正常返回模型列表。
4. 内存不足
Dify 包含多个容器。
如果服务器只有 2GB 内存,可能会出现:
容器频繁重启。
PostgreSQL 启动失败。
Worker 被系统杀掉。
建议至少使用 4GB 内存,生产环境建议 8GB 或以上。
总结
Docker Compose 是目前部署 Dify 最简单、最稳定的方式。它将 Web、API、数据库、缓存等多个组件统一管理,大幅降低了安装和维护成本。
整个部署流程可以概括为四步:
安装 Docker 和 Docker Compose。
下载 Dify 项目并复制
.env配置。执行
docker compose up -d启动所有服务。登录后台,配置模型提供商,开始创建 AI 应用。
对于个人开发者、小团队和企业来说,这种部署方式既方便升级,也便于后续扩展,是目前私有化部署 Dify 的主流方案。