写在前面:
近年来,人工智能技术正在快速进入各行各业。从ChatGPT、Claude、Gemini 等大模型的爆发,到企业内部AI智能助手、自动化客服、数据分析智能体的落地,越来越多的开发者开始关注如何快速构建自己的AI应用和智能体(Agent)。
目前,越来越多企业开始使用Dify构建内部AI系统,例如企业知识库问答、AI客服机器人、自动化数据分析助手、AI工作流系统等等,因此,学会部署Dify已经成为AI应用开发的重要技能之一。
本教程将详细介绍如何在Windows系统上借助Docker快速部署Dify平台,并在Dify上配置OpenRouter供应商。
1、什么是Dify
Dify(由Define + Modify组合而来)是一款开源的大型语言模型(LLM)应用开发平台,融合了后端即服务(Backend as Service, BaaS)与LLMOps理念,核心定位是成为LLM应用的“操作系统”,自身不提供大模型,而是通过统一调度和管理外部大模型服务,帮助开发者和企业快速构建生产级的生成式AI应用,大幅降低AI工程化门槛。
自创立以来,Dify已服务全球超过200万开发者,GitHub星标数突破60,000,成为LLM工具链领域的标杆产品。它的核心价值的在于解决大模型落地的工程难题——无需开发者手动处理提示工程、上下文管理、多模型路由、知识库检索等复杂环节,通过可视化操作,让技术与非技术人员都能参与AI应用的开发与部署,实现从AI创意到实际落地的快速转化。
Dify支持云托管与私有化部署双模式,适配金融、医疗、制造、跨境电商等多行业场景,既能满足企业数据安全、合规(如GDPR)的需求,也能适配初创企业快速验证AI想法的场景,是连接底层大模型与上层业务应用的关键中间件。
2、Dify的核心功能
核心功能模块
核心说明
可视化工作流与低代码开发
提供拖拽式可视化设计器,将复杂AI业务流程抽象为节点和边,无需复杂代码即可完成全链路编排;支持工作流组合、嵌套及执行追溯,降低开发门槛,非技术人员也能快速上手。
多模型兼容与统一管理
插件化架构无缝集成数百种开源与商业大模型,兼容OpenAI API标准;支持根据业务需求灵活切换模型,通过智能路由降低30%-50%调用成本,统一管理流量、权限与日志。
企业级RAG检索增强引擎
集成完整RAG流水线,支持20+文档格式语义化处理,自动完成文本提取、向量化等操作;通过语义检索+重排序提升回答准确率(≥92%),支持查询改写与原文追溯,降低AI“幻觉”风险。
全生命周期运维与可观测性
提供LLMOps监控体系,实时查看模型调用量、耗时、成本等指标;支持应用一键发布、版本管理与回滚,配备RBAC权限管理、审计日志等企业级合规功能。
开放插件生态与灵活扩展
兼容50+工具与API扩展,支持自定义插件开发,可对接云服务、数据库等外部资源;支持将AI应用发布为MCP服务,实现跨平台调用,拓展使用场景。
3、为什么使用Docker部署Dify
总结来说:
- 简化部署流程:Docker支持将应用及所有依赖打包为镜像,结合官方提供的Docker Compose配置文件,仅需执行一条命令(docker-compose up -d)即可完成Dify所有组件的一键部署,无需手动安装Python、Node.js、数据库等各类依赖,也无需处理组件版本兼容问题。
- 实现环境隔离与一致性:Docker基于Linux内核NameSpace技术实现资源隔离,Dify各组件运行在独立容器中,不仅相互之间互不干扰,还与主机环境完全隔离,避免主机软件版本、依赖冲突导致Dify运行异常。同时Docker将程序与所有依赖打包至容器,让程序表现仅与容器相关,与运行的操作系统环境无关,彻底解决“在我机器上能运行,在其他机器上不能运行”的行业痛点,确保Dify在开发、测试、生产环境的运行表现完全一致。
- 降低运维复杂度:通过Docker Desktop等可视化工具,可直观查看Dify各容器的运行状态(运行/停止/异常)、资源使用情况,无需复杂的命令行操作即可完成容器的启动、停止、重启等管理动作。同时,日志可集中管理,在Docker界面中可直接查看各组件的运行日志,快速定位部署或运行过程中的问题,大幅降低运维成本。
- 跨平台兼容:Docker是轻量级容器化技术,容器仅隔离应用运行时环境并与其他容器共享主机操作系统,相比虚拟机动辄几十G的磁盘、数G的内存占用,容器仅需数M空间,大幅减少硬件资源占用,能在相同规格服务器上部署更多容器,可根据Dify业务流量动态调整容器的CPU、内存分配。同时Docker支持Windows、macOS和Linux等主流操作系统,在不同系统中使用相同的Docker Compose配置和部署命令,基于Docker部署的Dify可轻松迁移到不同服务器或云平台,无需重新配置环境。
- 适配私有部署:Docker除了通过NameSpace实现隔离,还依托Control groups技术精准控制容器对CPU、内存、磁盘、网络等系统资源的消耗,避免Dify单个组件占用过多资源影响整体服务,保障服务稳定运行。同时可通过容器隔离和数据持久化配置,确保Dify的业务、用户、知识库数据完全存储在本地,不泄露至外部网络,满足企业数据合规需求。
1、系统环境要求
2、启用WSL和虚拟机功能
WSL(Windows Subsystem for Linux)是微软为Windows用户提供的一个子系统,它允许你在 Windows上原生运行Linux(不是虚拟机,不是双系统),直接使用Bash、apt、gcc、Python、Node.js 等Linux工具。
由于👇
Dify只认Linux → Docker在Windows上必须n8n 工作流 教程靠WSL2模拟Linux→所以需要开WSL!
打开任务管理器(ctrl + shifht + esc),在性能界面查看是否开启虚拟化。
以管理员身份打开PowerShell,运行以下:
该命令会自动启用WSL功能、安装WSL2内核、安装默认的Ubuntu、设置为WSL2。
安装完后,需要重启系统。
1、下载对应版本的Docker
首先检查电脑属于AMD64还是ARM64,按Win+R,输入cmd回车,输入:
输出:
- AMD64 → 就是 AMD64(x86_64)
- ARM64 → 就是 ARM64
进入Docker官方界面:Get Started | Docker,选择对应版本的进行下载。
2、安装Docker
双击Docker Desktop Installer.exe进行安装,勾选第一个和第三个,点击OK安装,安装后会重启系统。
3、验证安装
按Win+R,输入cmd回车,输入:
显示版本号,安装成功。
进入Docker Desktop注册或登录账号,在命令行继续输入:
出现Hello from Docker!说明Docker已经能正常拉取和运行镜像。

4、Docker常用核心指令
(1)查看类(看看容器 / 镜像状态)
(2)启动 / 停止 / 重启
(3)docker-compose专用(Dify就是用这个部署)
(4)清理类
(5)进入容器内部(排查问题用)
1、下载Dify
官方Git仓库地址:dify:一个开源助手API和GPT的替代品
下载.zip文件,解压得到dify-main文件夹。
2、配置源码
在dify-main文件夹→docker文件夹下找到.env.example文件,去掉.example后缀,如下图所示。
3、拉取Dify所需的镜像
继续在该docker文件夹中打开终端(输入cmd),输入:
如果遇到下载很慢或者下载失败的情况,可以考虑更换镜像源来进行加速。
进入Docker Desktop,确保账号是已登录状态,如下图显示“Sign in”为未登录状态。
登录以后点击小齿轮(Settings),选择Docker Engine。
在右侧粘贴以下文本(2026.3.12最新测试可用的镜像源,但下载速度较慢):
也可以考虑尝试以下镜像源:
Docker国内镜像源:https://registry.docker-cn.com
中科大源:https://docker.mirrors.ustc.edu.cn
网易源:https://hub-mirror.c.163.com
百度源:https://mirror.baidubce.com
腾讯源:https://ccr.ccs.tencentyun.com
点击右下角“Apply&restart”,重启Docker。
在Win+R中输入cmd回车,输入:
验证是否修改成功,若出现Registry Mirrors下新的镜像源则修改成功。
若需要域外镜像站,只能配置我们的代理,教程参考:
docker国内镜像源配置及走代理设置_docker镜像代理-CSDN博客
4、验证部署状态
成功下载如图所示:
验证部署状态需要在命令行中输入:
可以看到所有服务状态均为“Up”表示部署成功。
5、访问Dify
在浏览器中输入网址:http://localhost/apps,进入本地部署的Dify界面,第一次登录需要注册。
笔者选择OpenRouter供应商,在Dify页面中选择设置。
选择模型供应商,安装OpenRouter。
输入API key。
成功如下图所示。
欢迎交流!🌹🌹
保姆级教程:在Windows上本地部署Dify并搭建知识库与智能体_dify本地部署windows-CSDN博客
(86 封私信) Docker换源加速(更换镜像源)详细教程(2025.3最新可用镜像,全网最详细) – 知乎
docker国内镜像源配置及走代理设置_docker镜像代理-CSDN博客
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/277595.html原文链接:https://javaforall.net
