第一步:安装 WSL(Windows Subsystem for Linux)
参考learn.microsoft.com/zh-cn/windo...
-
启用 WSL
打开具有管理员权限的 PowerShell,运行以下命令以安装 WSL:
csswsl --install
安装完成后,重启电脑以完成配置。
-
选择 Linux 发行版
如果直接运行
wsl.exe --install -d ubuntu
报错,可以通过 Microsoft Store 搜索 "Linux" 并选择合适的 Ubuntu 版本进行安装。安装完成后,系统会提示你设置用户名和密码。
第二步:安装 Docker Desktop
- 下载 Docker Desktop
前往 Docker 官方文档 下载适用于 Windows 的 Docker Desktop。 - 安装并配置 Docker
根据安装向导完成 Docker 的安装,并确保启用了 WSL 2 后端支持。这将允许 Docker 在 WSL 环境中无缝运行。
第三步:克隆 Dify 源代码
-
获取 Dify 源码
我这里使用了ssh方式去拉了代码,不管通过什么方法,只要把dify的代码下载到自己电脑上就行
bashgit clone [email protected]:langgenius/dify.git
如果无法访问 GitHub,也可以通过其他方式(如 ZIP 包下载)获取代码。
-
进入 Docker 目录
进入 Dify 项目的
docker
目录:bashcd dify/docker
-
复制环境配置文件
复制
.env.example
文件为.env
,这是容器运行所需的配置文件:bashcp .env.example .env
第四步:启动 Dify
-
检查 Docker Compose 版本
通过以下命令检查你的 Docker Compose 版本:
docker compose version
-
如果版本是 V2,使用以下命令启动容器:
docker compose up -d
-
如果版本是 V1,使用以下命令:
docker-compose up -d
-
-
解决拉取镜像超时问题
如果在拉取镜像时遇到类似以下错误:
vbscriptError response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
可以通过修改 Docker 的配置文件来解决。编辑或创建
/etc/docker/daemon.json
文件,添加以下内容:json{ "runtimes": { "nvidia": { "args": [], "path": "nvidia-container-runtime" } }, "registry-mirrors": [ "https://docker.registry.cyou", "https://docker-cf.registry.cyou", "https://dockercf.jsdelivr.fyi", "https://docker.jsdelivr.fyi", "https://dockertest.jsdelivr.fyi", "https://mirror.aliyuncs.com", "https://dockerproxy.com", "https://mirror.baidubce.com", "https://docker.m.daocloud.io", "https://docker.nju.edu.cn", "https://docker.mirrors.sjtug.sjtu.edu.cn", "https://docker.mirrors.ustc.edu.cn", "https://mirror.iscas.ac.cn", "https://docker.rainbond.cc" ] }
-
验证容器运行状态
使用以下命令检查容器是否正常运行:
docker compose ps
正常情况下,你应该可以看到包括以下服务:
- 3 个业务服务:
api / worker / web
- 6 个基础组件:
weaviate / db / redis / nginx / ssrf_proxy / sandbox
- 3 个业务服务:
第五步:访问 Dify
在浏览器中输入 http://localhost
,即可访问 Dify。
总结
通过以上步骤,就已经成功在 Windows 系统上通过Docker Compose部署了本地Dify 。接下来就通过Dify构建属于自己的智能体吧!