前言
Dify 是当前最热门的开源 AI 应用开发平台之一,支持可视化编排 Agent 工作流、接入多种大模型、构建知识库。本文面向零基础新手,手把手教你用 Docker Compose 在本地或服务器上部署 Dify,全程无需编写代码。
一、前置条件
部署前请确认你的机器满足以下最低配置:
- CPU:≥ 2 核
- 内存:≥ 4 GB(推荐 8 GB 以上,运行大模型时更流畅)
- 磁盘:≥ 20 GB 可用空间
- 操作系统:Linux / macOS 10.14+ / Windows 10/11(需开启 WSL2)
- 软件:Docker 19.03+、Docker Compose 2.24.0+
如果你还没安装 Docker,推荐直接去官网下载 Docker Desktop,macOS 和 Windows 用户开箱即用。Linux 用户可参考 Docker 官方文档安装 Docker Engine 和 Docker Compose。
二、部署步骤
步骤 1:克隆 Dify 源码
打开终端,执行以下命令自动拉取最新稳定版:
- git clone --branch "$(curl -s https://api.github.com/repos/langgenius/dify/releases/latest | jq -r .tag_name)" https://github.com/langgenius/dify.git
复制代码
如果系统没有 jq,也可以手动去 GitHub Release 页面查看最新版本号,替换命令中的 tag 部分。
步骤 2:进入 docker 目录并复制配置文件
- cd dify/docker
- cp .env.example .env
复制代码.env 文件是 Dify 的核心配置文件,初次部署直接用默认配置即可。后续如需自定义数据库、向量存储、端口映射等,可以编辑此文件。
步骤 3:启动 Dify 服务
执行 Docker Compose 启动命令:
首次启动会拉取约 11 个容器镜像,包括:
- 5 个核心服务:api、worker、worker_beat、web、plugin_daemon
- 6 个依赖组件:weaviate(向量数据库)、db_postgres(PostgreSQL)、redis、nginx、ssrf_proxy、sandbox
当看到类似以下输出时,说明启动成功:
- [+] Running 13/13
- ✔ Network docker_ssrf_proxy_network Created
- ✔ Network docker_default Created
- ✔ Container docker-sandbox-1 Started
- ✔ Container docker-db_postgres-1 Healthy
- ✔ Container docker-web-1 Started
- ...
复制代码
步骤 4:访问 Dify 控制台
打开浏览器,访问:
首次访问会进入初始化页面,按提示设置管理员账号和密码即可。
如果你部署在远程服务器上,请将 localhost 替换为服务器 IP 地址,并确保防火墙放行 80 端口。
三、验证部署
部署完成后,建议进行以下验证:
- 容器状态检查:执行,确认所有容器状态为 Up 或 Healthy
- Web 界面访问:浏览器打开 http://localhost,能正常加载登录页
- API 服务测试:在 Dify 控制台创建一个空白应用,尝试发送一条消息,确认 AI 回复正常
- 模型接入测试:在「设置 → 模型提供商」中添加 OpenAI API Key 或本地 Ollama 地址,测试对话功能
四、常见问题与解决
Q1:启动时提示 Docker Compose 版本过低?
Dify 要求 Docker Compose 2.24.0+。升级方法:
- Docker Desktop 用户:直接更新到最新版即可
- Linux 用户:执行查看版本,如过低请按官方文档升级
Q2:容器启动后无法访问 Web 界面?
排查步骤:
- 检查容器状态:
- 查看日志定位错误:
- docker compose logs -f web
复制代码 - 确认端口未被占用:执行
- 远程服务器需检查防火墙和安全组规则
Q3:如何更新到最新版本?
- cd dify/docker
- docker compose down
- git pull
- docker compose pull
- docker compose up -d
复制代码更新前建议备份 .env 文件和数据目录,避免配置丢失。
Q4:如何修改默认端口?
编辑 dify/docker/.env 文件,找到和字段,修改为你需要的端口,然后重启容器:
- docker compose down
- docker compose up -d
复制代码
Q5:部署后如何接入本地大模型(如 Ollama)?
在 Dify 控制台 → 设置 → 模型提供商 → Ollama,填写本地地址(如- http://host.docker.internal:11434
复制代码 ),选择已下载的模型即可。注意:Linux 下 Docker 容器访问宿主机需使用宿主机 IP,而非 localhost。
五、进阶建议
- 数据持久化:生产环境部署时,建议将 PostgreSQL 和 Weaviate 的数据目录挂载到宿主机,避免容器重建后数据丢失
- HTTPS 配置:公网部署建议配置 SSL 证书,Dify 支持自动 Let's Encrypt 或手动配置证书
- 资源监控:使用或安装 cAdvisor 监控容器资源占用
- 备份策略:定期备份 .env 文件和 PostgreSQL 数据库,可使用命令导出
总结
通过本文的 Docker Compose 方式,你可以在 5 分钟内完成 Dify 的本地部署,无需关心复杂的环境配置和依赖安装。Dify 的可视化界面让 AI 应用开发变得像搭积木一样简单,非常适合新手入门和快速原型验证。
如果你在部署过程中遇到其他问题,欢迎在评论区留言交流! |