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                # 持久化数据,数据库、上传文件
相关推荐
智感子34 分钟前
测控链路:从传感器到上位机
人工智能·嵌入式硬件·fpga开发
人工智能技术咨询.4 小时前
具身智能中的世界模型训练
人工智能
LaughingZhu4 小时前
Product Hunt 每日热榜 | 2026-10-06
人工智能·深度学习·神经网络·搜索引擎·百度
AOI小白新手上路4 小时前
AOI 缺陷检测复现实操指南:Anomalib + MVTec AD(glass)与 YOLOv8 + NEU-DET 两条路线
人工智能·深度学习·yolo
henrylin99995 小时前
RD-AGENT 第一讲 · AI 因子工厂是怎么运转的
人工智能
高洁015 小时前
具身智能中的世界模型训练
人工智能·python·深度学习·机器学习·transformer
无线通信科研笔记5 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
Devlive 开源社区5 小时前
AuthX 正式更名 GrantForge:我们重新做了一遍权限管理系统
大数据·人工智能·架构
朝朝辞暮i5 小时前
VLA 系统学习第 1 课:VLA 到底在干什么?
人工智能·python·计算机视觉·vla
鲲穹AI种草5 小时前
AI 壁纸生成工具怎么选?鲲穹 AI 壁纸工具功能实测与横向对比
人工智能·壁纸生成工具