找回密码
 立即注册
首页 业界区 业界 基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识 ...

基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程

慕疼 2025-6-2 22:53:11
1.png

 
    本次演示部署环境:Windows 10专业版,转载请说明出处

下载安装Docker

  Docker官网:https://www.docker.com/
自定义Docker安装路径

  Docker默认安装在C盘,大小大概2.9G,做这行最忌讳的就是安装软件全装C盘,所以我调整了下安装路径。
新建安装目录:E:\MySoftware\Docker并将Docker安装包放在目录内,这里有个小细节,安装包名称一定要改下,官网下载下来的名称叫:Docker Desktop Installer.exe,一定要修改一下,不能用这个名字,否则等下在CMD命令安装的时候就会报错说被资源占用,因为Docker在安装时会解压一个一模一样名称的exe程序,重名就会导致安装失败,所以一定要改下名字。
2.png

  在文件路径输入cmd回车
3.png

 输入:
  1. [/code][code]."Docker.exe" install --installation-dir=E:\MySoftware\Docker
复制代码
  1. 语法:.\”安装程序名称” install --installation-dir=指定Docker安装的路径
复制代码
4.png

   安装完成后会提示Installation sueceeded
5.png

  桌面会出现Docker图标
6.png

  启动Docker这里很多人会报这个错,这个是因为电脑没有WSL导致无法启动Docker容器。
7.png

下载WSL

  进入微软官网按步骤执行即解决,几分钟完成。
https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package
  用管理员身份打开Powershell窗口,粘贴微软官网的命令执行下载即可
粘贴执行:
  1. dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
复制代码
  1. dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
复制代码
  1. wsl --set-default-version 2
复制代码
8.png
  下载完后会启动一个这个页面,可以关闭。
9.png

  注:完成内核更新包安装后需重启系统(微软官方指南),再启动下Docker,出现这个界面就代表WSL和Docker都启动成功了。
10.png

Docker镜像存储迁移

  这时进入Docker设置中,将Docker的镜像资源存放路径改一下,不然都会下载都C盘。
11.png

Docker镜像源加速配置

  至关重要的地方来了,打开Docker的设置中的-->Docker Engine,然后把国内的镜像源复制进去保存,我这里提供一些,如果失效了就百度找新的。
  1. {
  2. "registry-mirrors": [
  3. "https://docker.m.daocloud.io",
  4. "https://noohub.ru",
  5. "https://huecker.io",
  6. "https://dockerhub.timeweb.cloud",
  7. "https://0c105db5188026850f80c001def654a0.mirror.swr.myhuaweicloud.com",
  8. "https://5tqw56kt.mirror.aliyuncs.com",
  9. "https://docker.1panel.live",
  10. "http://mirrors.ustc.edu.cn/",
  11. "http://mirror.azure.cn/",
  12. "https://hub.rat.dev/",
  13. "https://docker.ckyl.me/",
  14. "https://docker.chenby.cn",
  15. "https://docker.hpcloud.cloud",
  16. "https://docker.m.daocloud.io"
  17. ]
  18. }  
复制代码
12.png

   保存镜像源后就可以试一下拉取镜像,如果拉取不成功也可以重启下Docker,还是不行提示超时就说明镜像源失效了,就在网上搜索下新的镜像源。
测试拉取镜像

  在cmd命令窗口输入:
  1. docker pull hello-world
复制代码
  出现这个Status: Dowloaded newer image for hello-world:latest就代表镜像源没有问题。
13.png

安装Dify

下载Dify代码包

  进入github下载Dify代码包:https://github.com/langgenius/dify
14.png

  解压代码包后,把压缩后的文件夹复制到自己想要安装的目录下,这里复制一下.env.example文件,然后重命名一下改成.env
15.png

  在当前文件路径下输入CMD回车
16.png

拉取Dify依赖镜像资源

  粘贴以下命令回车,会自动下载一些依赖资源。如果你的下载失败就是镜像源失效了,换一个镜像源,重新拉取镜像。
  1. docker-compose up -d
复制代码
17.png

   下载完成
18.png

  回到Docker可以都看到已经下载好的镜像全部都显示了,并且都在运行。
19.png

进入Dify后台

  输入http://127.0.0.1/会自动打开Dify的页面,有人会遇到这个Internal Server Error报错,这是因为镜像下载来后,有部分镜像还在启动中或未启动,这时候将所有镜像重启一次才可以。
20.png

  重启所有镜像

创建管理员用户

  重新进入Dify管理后台,首次进入需创建管理员用户。
22.png

  创建管理员用户后,将进入登录界面。
23.png

  登录成功
24.png

添加AI模型

  点击右上角头像-设置
成员这里可以创建企业内成员进行登录使用。
25.png

  选择模型供应商
  这里我本地已经安装部署好了Ollama和Deepseek R1和BGE-M3模型,如果没有部署好的请看我这篇文章:本地电脑部署DeepSeek 大模型AI
26.png

  由于我本地已经安装好了Ollama,所以就找到Ollama,点击安装插件,其他供应商选择对应安装。下载可能稍慢,请耐心等待。
27.png

28.png

  添加模型时,若不知模型名称,可在CMD中输入Ollama list查看本地模型名称并复制。
29.png

模型类型:
推理模型 → LLM
嵌入模型 → Text Embedding
模型名称就把刚刚复制下来的粘贴上去就可以了。
这里IP地址要注意了,由于我没有用Docker容器里部署Ollama,而是在本地电脑安装的Ollama,这里对IP就要进行特殊处理下了,需要改为:http://host.docker.internal:11434。
网络通信原理:
host.docker.internal为Docker内置域名解析,实现容器与宿主机服务的桥接。简单说就是Docker自己和我们电脑主机网络做了一个映射关系。

   模型添加完成
31.png

创建应用

  其实我也不太会使用,就简单粗糙的做个示范吧,要深入研究需要找下资料学习下。
这里我选择创建聊天助手(每个不同应用的作用不一样,选择与自己相符的就行)
32.png

  添加一些提示词、变量、知识库、模型,设置好后在右边可以调试预览效果,调试完成后就可以发布应用了。
33.png

34.png

  这里提一句,由于我自己的电脑资源很一般,所以每次一提问的时候资源就占比很高,不过等AI思考完毕后资源占用会下降。
35.png

   测试结果,虽然回答是错误的。
36.png

知识库测试

  我这里测试了下知识库检索,上传了6个本地文档。
37.png

   然后我简单的定义了提示词后,对模型提出问题:结合知识库帮我找出住在向XXX街道人员的电话和姓名。
38.png

 
 
  然后真的回答对了,全体起立!
39.gif

  这是源文件里的内容。(虚拟信息,如有雷同纯属巧合)
40.png

 
WSL资源控制

  由于我是针对个人学习,在学习完后我发现我的电脑内存占比一直居高不下,在任务管理器查到了是一个Vmmem的进程占用,大概也知道应该是虚拟机类的占用。
  搜索了下网上资源了解到vmmem是一个由WSL(Windows Subsystem for Linux)创建的虚拟进程,主要用于管理WSL2的内存和CPU资源。当WSL2运行时,Vmmem进程会占用大量的内存和CPU资源,以确保虚拟机的最佳性能。然而,这可能会导致主机系统的其他应用程序运行缓慢或无法正常运行‌。
41.png

关闭WSL服务

  所以如果不用的时候可以关闭掉WSL服务。
在cmd里输入:
  1. wsl --shutdown
复制代码
42.png

  关闭后电脑资源就回到正常状态了。
启动WSL服务

  那如果我们后再用的时候就重新启动WSL服务就可以。
在cmd输入:
  1. wsl
复制代码
43.png

最后的最后

  关于Dify的作用文中提到的只是冰山一角,它真正的厉害之处是它的工作流,由于博主知识有限,只能教大家部署应用,具体的功能开发使用还要大家自行学习,后续博主也会去学习Dify的相关知识,有机会的话就再开一贴。如有讲的不对的地方,敬请指正。
附上Dify的官方操作手册地址:https://docs.dify.ai/zh-hans
  这是我整个学习过程中遇到的问题,最后结合百度和AI最后都完成解决了。
总结几个小坑:
1、WSL2的安装。
2、Docker容器镜像源的设置。
3、Dify依赖镜像的拉取。
4、Dify添加模型时IP映射设置。
44.png

                       觉得不错的麻烦大家动动发财的小手点下推荐,谢谢!!!
45.png

 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册