Dify Windows Docker Desktop 部署文档

Dify Windows Docker Desktop 部署文档

适用:Windows10/11,使用 Docker Desktop + WSL2 后端,不建议直接 windows 原生,必须开启 WSL2

最低配置:内存 ≥8G,推荐 16G;磁盘预留 40G 以上空间

一、前置准备

1. 开启 WSL2

管理员身份打开 PowerShell

复制代码
wsl --install

执行完成后重启电脑。

确认 WSL 版本

复制代码
wsl --list --verbose

默认版本应为 VERSION 2

2. 安装 Docker Desktop for Windows

  1. 下载:https://www.docker.com/products/docker-desktop/
  2. 安装时务必勾选:Use WSL 2 instead of Hyper‑V
  3. 安装完成启动 Docker Desktop,右下角图标绿色代表正常运行
  4. 开启设置 → Resources → WSL Integration,启用 Ubuntu 子系统集成

3. 安装 Git for Windows

下载安装 Git:https://git-scm.com/download/win

安装全部默认选项即可。

检查工具,打开 Git Bash

复制代码
git --version
docker --version
docker compose version

二、下载 Dify 源码

推荐在非中文路径,例如 D:\dev路径不要带中文、空格

打开 Git Bash

复制代码
# 进入D盘dev目录
cd /d/dev
git clone https://github.com/langgenius/dify.git
cd dify/docker

GitHub 下载慢:手动下载 zip 解压到 D:\dev\dify,再进入 dify/docker 文件夹

三、配置环境变量 .env

复制模板文件

复制代码
cp .env.example .env

用记事本 / VS Code 打开 .env 文件编辑

Windows 关键配置

复制代码
# Windows本地浏览器访问地址
WEB_API_URL=http://localhost
WEB_URL=http://localhost

# 数据库密码,可以修改
POSTGRES_PASSWORD=dify@Win123456

# Redis密码
REDIS_PASSWORD=redis@Win123456

# 生产务必更换随机密钥,openssl rand -hex 16生成
SECRET_KEY=replace-this-with-your-random-key

# 文件存储类型,windows本地用local
STORAGE_TYPE=local

生成 SECRET_KEY(Git Bash 执行)

复制代码
openssl rand -hex 16

把输出字符串替换上面 SECRET_KEY 值。

⚠️不要使用记事本直接另存为,避免编码换行符异常,优先 VS Code 编辑。

四、启动 Dify 服务

dify/docker 目录,Git Bash 执行

复制代码
# 拉取镜像
docker compose pull

# 后台启动容器
docker compose up -d

查看容器状态

复制代码
docker compose ps

所有容器状态为 Up 代表启动成功。

✅首次部署执行数据库初始化(必做)

复制代码
docker compose exec api flask db upgrade

五、访问 Dify 平台

浏览器访问:http://localhost

默认端口 80,如果 80 被占用:修改 docker-compose.yaml web 服务端口映射 8080:80,访问 http://localhost:8080

首次进入页面,设置管理员邮箱与密码。

六、Windows 对接本地 Ollama

Ollama 安装在 Windows 宿主机,Dify 运行在 Docker 容器内部,容器访问宿主机用 host.docker.internal

  1. Windows Ollama 设置允许外部访问
  • Win 搜索服务,找到 Ollama Service → 属性
  • 或者设置系统环境变量:OLLAMA_HOST=0.0.0.0,重启 Ollama 服务
  1. Dify 后台模型供应商 Ollama 填写端点

    http://host.docker.internal:11434

测试连通,在 Git Bash 测试容器内访问 ollama

复制代码
docker compose exec api curl http://host.docker.internal:11434/api/tags

七、Windows 常用运维命令(Git Bash 执行)

复制代码
# 查看实时日志
docker compose logs -f api
docker compose logs -f web

# 停止服务,保留数据
docker compose down

# 停止并删除全部数据卷【危险,所有数据清空】
docker compose down -v

# Dify版本升级
cd /d/dev/dify/docker
git pull
docker compose pull
docker compose up -d
# 升级后执行数据库迁移
docker compose exec api flask db upgrade

Windows 数据库备份

复制代码
docker compose exec -T db pg_dump -U postgres dify > ./dify_win_backup.sql

八、常见踩坑(Windows 特有)

  1. 容器启动报错权限 / 路径问题

不要放在中文路径;Docker Desktop 设置开启 WSL2 后端;不要放在 Windows OneDrive 同步文件夹。

  1. 网页打不开,连接拒绝
  • 确认 Docker Desktop 正在运行;所有容器状态 Up;检查.env WEB_URL 地址。
  • 80 端口被占用:修改 web 端口映射为 8080。
  1. Ollama 调用不通
  • 确认 Ollama 环境变量 OLLAMA_HOST=0.0.0.0,重启 Ollama;
  • 优先使用host.docker.internal:11434,不要写 127.0.0.1(容器内部指向自己,不是 Windows 主机)。
  1. flask db upgrade 执行失败

api 容器还没完全启动完成,等待 30 秒后再执行命令。

  1. 文件上传失败
    volumes 目录需要 Docker Desktop 读写权限,不要放在受保护系统目录。

九、Windows 生产注意

  1. Windows 仅适合体验、测试;正式长期使用建议 Linux 服务器部署。
  2. Docker Desktop 关闭电脑休眠会丢失服务,建议 WSL 设置开机自启。
  3. 定期备份 dify_win_backup.sql

目录说明

复制代码
dify/docker
├─ docker-compose.yaml    # 编排文件
├─ .env                   # 环境配置
└─ volumes                # 持久化数据,数据库、上传文件
相关推荐
DeepLink_20251 小时前
Triton第四课:基于对称内存融合 AllGather 与 MatMul,提速1.56倍
人工智能·芯片·技术科普
zhangfeng11331 小时前
AMD Instinct MI50(gfx906)上为 Qwen 系列模型优化并可用的 vLLM 相关仓库、Docker 镜像与实践指南。
人工智能·docker·ai编程·qwen·算子开发·vllm·mi50
其实防守也摸鱼1 小时前
信创是什么:一文读懂信息技术应用创新
人工智能·阿里云·云计算·github·copilot
咖啡星人k1 小时前
2026 AI Agent 长期记忆:为什么 AI 助手总“聊完就忘“?MonkeyCode 免费上手
人工智能·深度学习·机器学习·语言模型·自然语言处理
帅哥的AI自修课1 小时前
AI 换个会话就装失忆?Letta 焊死「记忆即灵魂」,从 MemGPT 的 OS 梦到 Core/Recall/Archival 三层记忆一篇打通
人工智能
机构师1 小时前
AI编程实战:效率与成本,AI 编程的 ROI 怎么算
人工智能·prompt·ai编程·deepseek
ManageEngineITSM1 小时前
什么是CMDB?配置管理数据库的定义、作用与建设方法一文讲清
大数据·数据库·人工智能·资产管理·变更管理
Delite8021 小时前
开口闪点检测智能化升级:工业油品安全检测的标准化解决方案
大数据·人工智能·安全
CallFay云起未来1 小时前
AI客服能不能减少人工回复?从重复咨询到人机协同的落地分析
java·大数据·人工智能·文心一言