Windows 环境下使用 Docker 成功部署 Dify(完整实战记录)

一、背景说明

最近在学习和实践 LLM 应用开发平台时,选择了 Dify 。

Dify 是一个集成了 Prompt 管理、知识库(RAG)、多模型接入、API 服务的开源平台,官方推荐使用 Docker Compose 进行部署。

本文记录一次 Windows 环境下完整部署 Dify 的真实过程,包含实际踩坑与解决方案,供后续复现和参考。


二、环境准备

1. 操作系统

  • Windows 10 / Windows 11(64 位)

2. 必备软件

  • Git for Windows

  • Docker Desktop(需启用 WSL2)


三、Git 安装与验证

1️⃣ 安装 Git for Windows

安装过程中重点选择以下选项:

  • Git from the command line and also from 3rd-party software

  • Git LFS

  • Use bundled OpenSSH

  • Use OpenSSL

  • Checkout Windows-style, commit Unix-style line endings

2️⃣ 验证 Git 是否安装成功

打开 CMD 或 PowerShell,执行:

复制代码

git --version

正确输出示例:

复制代码

git version 2.52.0.windows.1

说明 Git 已成功安装并加入系统 PATH。


四、克隆 Dify 源码(解决网络慢 / 中断问题)

1️⃣ 切换到代码目录

Windows 的 CMD 需要使用 /d 切盘符:

复制代码

cd /d D:\software

2️⃣ 使用浅克隆方式拉取 Dify(强烈推荐)

由于 Dify 仓库体积较大,直接 git clone 容易因网络问题失败,因此采用浅克隆:

复制代码

git clone --depth 1 --single-branch https://github.com/langgenius/dify.git

成功标志如下:

复制代码

Receiving objects: 100% Resolving deltas: 100% Updating files: 100%


五、进入 Docker 目录并初始化配置

进入 Dify 的 Docker 目录:

复制代码

cd dify\docker

复制环境变量模板文件:

复制代码

copy .env.example .env

默认配置即可启动,无需修改。


六、使用 Docker Compose 启动 Dify

1️⃣ 启动所有服务

复制代码

docker compose up -d

首次启动会自动:

  • 拉取多个 Docker 镜像(体积较大)

  • 创建 Docker 网络

  • 启动多个服务容器

该过程耗时较长,属于正常现象,不建议中途打断。


2️⃣ 启动成功的关键标志

当终端出现类似输出时,说明启动成功:

复制代码

✔ Container docker-api-1 Started ✔ Container docker-web-1 Started ✔ Container docker-nginx-1 Started ✔ Container docker-worker-1 Started ✔ Container docker-db_postgres-1 Healthy

说明:

  • db_postgres 显示 Healthy 非常关键

  • init_permissions 容器显示 Exited 属于正常(一次性初始化任务)


七、验证 Docker 容器状态

执行:

复制代码

docker ps

确认所有 docker-xxx 容器均为 Up 状态。


八、访问 Dify 管理后台

在浏览器中访问:

复制代码

http://localhost

如果无法访问,可尝试:

复制代码

http://localhost:3000

首次进入需要:

  • 创建管理员账号

  • 登录系统后台

至此,Dify 已在本地成功部署并运行。


九、部署过程中遇到的问题与解决方案

问题 1:Git clone 报错(Recv failure / early EOF)

原因:

  • GitHub 网络连接不稳定

  • 仓库体积较大

解决方案:

  • 使用浅克隆:
复制代码

git clone --depth 1 --single-branch https://github.com/langgenius/dify.git

  • 或直接通过浏览器下载 ZIP 包

问题 2:Docker 镜像拉取速度慢

原因:

  • 镜像体积大

  • 网络限制

解决方案:

  • 耐心等待首次拉取完成

  • 避免中途 Ctrl + C

  • 后续可配置 Docker 镜像加速器(进阶)


十、总结

本次在 Windows 环境下成功部署 Dify,关键经验包括:

  • Git 必须正确加入 PATH

  • 大型仓库优先使用浅克隆

  • Docker 首次启动慢是正常现象

  • 正确认识各容器状态(Started / Healthy / Exited)

完成部署后,可基于 Dify 构建:

  • 智能客服系统

  • RAG 知识库问答

  • 企业内部 AI 应用

相关推荐
Decay__2 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子4 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
万联WANFLOW5 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery7 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__8 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森9 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼10 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
by2099911 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina11 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼11 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测