内网离线部署DeepSeek:Ollama连接失败排查与RAG知识库搭建指南
简介这份PDF文档面向政企内网IT运维人员及具备基础技术能力的学习者聚焦无互联网接入场景下DeepSeek的离线部署与AI知识库搭建。内容覆盖离线资源准备、多平台环境部署、数据投喂与权限管理并针对国产化适配与安全加固做了专门优化可帮助读者在Windows Server、Linux及macOS上完成从模型导入到RAG知识库落地的全流程。资源包共1个PDF文件大小约5.28MB以图文步骤形式呈现便于按章节查阅与对照操作。文档重点讲解两种RAG实现路径其中基于Cherry Studio的数据投喂方式对新手较为友好同时涉及Ollama API访问控制、宝塔面板安全设置及操作系统、CPU架构与硬件兼容性等国产化要点。目前已有1372人学习适合需要在内网环境中安全引入AI能力、解决部署与权限难题的技术人员参考。1. 内网离线部署 DeepSeek为什么你的 Ollama 装完却连不上内网环境里装 DeepSeek最让人抓狂的不是模型跑不起来而是 Ollama 服务明明启动了客户端却死活连不上。我见过太多人在这上面翻车——安装包双击完命令行敲ollama run deepseek-r1也能出结果但换到另一台机器用 Cherry Studio 或 Lobe Chat 去连直接超时。问题往往出在OLLAMA_HOST这个环境变量上默认只监听127.0.0.1内网其他机器根本访问不到。这套离线部署方案覆盖 Windows Server、Linux 和 macOS 三个平台核心组件就是 Ollama 加离线模型包再配一个 Web 客户端做知识库入口。适合在政企内网、实验室隔离环境里需要本地 AI 知识库的运维和开发人员。装不好不会炸但会卡在“服务在跑、请求不通”这种玄学状态里排查起来很费时间。2. 离线资源准备模型包、Ollama 安装包和客户端镜像怎么选2.1 模型离线包的获取与完整性校验内网部署的第一步不是装软件而是把模型文件弄进去。DeepSeek 的模型文件动辄几十 GB在线ollama run那套在内网完全走不通。常见做法是在有外网的机器上先把模型拉下来再通过物理介质导入。从 Ollama 官方仓库拉取模型是最直接的方式。在有网的机器上执行# 拉取 DeepSeek-R1 各版本按需选择 ollama pull deepseek-r1:7b ollama pull deepseek-r1:14b ollama pull deepseek-r1:32b # RAG 需要的文本向量模型 ollama pull nomic-embed-text拉完之后模型文件默认存在~/.ollama/models目录下Linux/macOS或C:\Users\用户名\.ollama\modelsWindows。把这个目录整体打包拷走就行。如果模型文件太大Linux 下用split分割Windows 下用 7-Zip 分卷压缩到了内网再合并。提示模型文件导入前务必做 SHA256 校验内网传输环节多文件损坏的概率比想象中高。# Linux/macOS 校验 sha256sum /path/to/model/file # Windows PowerShell 校验 Get-FileHash -Algorithm SHA256 C:\path\to\model\file校验值跟官方提供的对比不一致就重新传。这一步别省我见过因为模型文件损坏导致 Ollama 加载时报unexpected EOF的案例排查了半天才发现是拷贝过程中断了。如果官方仓库拉不动ModelScope 上搜 GGUF 格式的 DeepSeek 模型也能用。GGUF 是 Ollama 能直接导入的格式下载后需要手动写一个 Modelfile# 新建 Modelfile内容如下 FROM ./deepseek-r1-7b.Q4_K_M.gguf然后执行导入# 进入模型文件所在目录 cd /path/to/model/dir # 导入模型名称自定义 ollama create deepseek-r1-local -f Modelfile # 验证导入结果 ollama listollama create的-f参数指定 Modelfile 路径模型名称自己定导入成功后ollama list里能看到就算成了。2.2 Ollama 离线安装包的跨平台准备Ollama 的离线安装包分平台处理。Windows 最简单官网下载.exe安装包直接拷进内网双击。Linux 和 macOS 需要多一步操作。Linux 下在有网的机器上执行官方安装脚本curl -fsSL https://ollama.com/install.sh | sh脚本跑完后Ollama 二进制文件通常在/usr/local/bin/ollama。把这个文件拷到内网服务器的/usr/local/bin/下赋执行权限sudo cp ollama /usr/local/bin/ sudo chmod x /usr/local/bin/ollamamacOS 同样可以用安装脚本或者用 Homebrewbrew install ollama。装完后二进制文件位置跟 Linux 类似拷走即可。2.3 客户端离线包Lobe Chat 和 Cherry Studio 的取舍客户端这块有两个选择。Lobe Chat 是 Web 界面支持多用户和权限划分适合团队共用Cherry Studio 是桌面客户端喂数据做 RAG 更简单新手推荐。Lobe Chat 用 Docker 部署离线环境需要先在有网的机器上拉镜像再导出# 有网机器上拉取镜像 docker pull lobehub/lobe-chat # 导出为 tar 包 docker save -o lobe-chat.tar lobehub/lobe-chat # 把 tar 包拷到内网加载镜像 docker load -i lobe-chat.tar启动命令里几个关键环境变量docker run -d -p 3210:3210 \ -e OPENAI_API_KEYsk-xxxx \ -e OPENAI_PROXY_URLhttp://内网Ollama地址:11434/v1 \ -e ACCESS_CODEyour-access-code \ --name lobe-chat \ lobehub/lobe-chatOPENAI_PROXY_URL指向内网 Ollama 的 API 地址ACCESS_CODE是访问认证码设一个自己记得住的。OPENAI_API_KEY在内网 Ollama 场景下随便填Ollama 不校验这个。Cherry Studio 直接下载桌面安装包拷进去就行配置里填 Ollama 地址和端口即可连接。3. 内网环境部署Windows Server 与 Linux 的配置差异3.1 Windows Server 部署与防火墙放行Windows Server 上装 Ollama 就是双击安装包的事但装完必须配环境变量否则内网其他机器连不上。右键“此电脑” → 属性 → 高级系统设置 → 环境变量在系统变量里新建变量名变量值说明OLLAMA_HOST0.0.0.0:11434监听所有网卡内网可访问OLLAMA_MODELSD:\ollama\models模型存放路径按实际改改完重启 Ollama 服务。可以在服务管理器里手动重启或者命令行Restart-Service Ollama防火墙这块容易漏。默认 Windows 防火墙会拦 11434 端口需要加一条入站规则netsh advfirewall firewall add rule nameOllama dirin actionallow protocolTCP localport11434Lobe Chat 的 3210 端口同理放行。Windows Server 2019 和 2022 实测没问题更早的版本可能在 Docker 兼容性上出幺蛾子。3.2 Linux Server 部署与 systemd 服务管理Linux 下 Ollama 的二进制文件拷进去之后建议用 systemd 管理开机自启和崩溃重启都省心。创建/etc/systemd/system/ollama.service[Unit] DescriptionOllama Service Afternetwork.target [Service] Useryouruser WorkingDirectory/path/to/ollama ExecStart/usr/local/bin/ollama serve EnvironmentOLLAMA_HOST0.0.0.0:11434 EnvironmentOLLAMA_MODELS/path/to/your/models Restartalways [Install] WantedBymulti-user.targetUser改成实际运行用户WorkingDirectory和OLLAMA_MODELS按实际路径改。Restartalways保证服务挂了自动拉起来。启用并启动sudo systemctl daemon-reload sudo systemctl enable ollama sudo systemctl start ollama防火墙放行# CentOS/RHEL sudo firewall-cmd --permanent --add-port11434/tcp sudo firewall-cmd --reload # Ubuntu/Debian sudo ufw allow 11434/tcp高并发场景下调整ulimit# 临时生效 ulimit -n 65535 # 永久生效编辑 /etc/security/limits.conf * soft nofile 65535 * hard nofile 655353.3 macOS 部署与 LaunchAgents 管理macOS 上装 Ollama 用 Homebrew 最省事brew install ollama。环境变量配在~/.zshrc里export OLLAMA_HOST0.0.0.0:11434 export OLLAMA_MODELS/path/to/your/modelssource ~/.zshrc生效。macOS 的 Gatekeeper 可能会拦一下在安全性与隐私里放行即可。开机自启用launchctl配 LaunchAgents不过内网服务器场景下 macOS 用得少这里不展开。4. 避坑与排查内网部署最常见的五个翻车点4.1 服务启动了但内网连不上现象本机ollama run正常其他机器访问http://IP:11434超时。原因OLLAMA_HOST没设成0.0.0.0:11434默认只监听127.0.0.1。解决检查环境变量是否生效重启 Ollama 服务。Linux 下systemctl show ollama | grep Environment可以看当前配置。4.2 模型导入后 ollama list 看不到现象ollama create执行完没报错但ollama list里没有新模型。原因Modelfile 里的FROM路径写错了或者模型文件跟 Modelfile 不在同一目录。解决FROM后面跟的是相对路径确保cd到模型文件所在目录再执行ollama create。路径里不要有中文和空格。4.3 Lobe Chat 连 Ollama 报 404现象Lobe Chat 界面能打开但发消息报错日志里是 404。原因OPENAI_PROXY_URL没加/v1后缀。解决Ollama 的 OpenAI 兼容接口地址是http://IP:11434/v1少写/v1就会 404。4.4 模型加载慢或内存爆掉现象ollama run卡在加载阶段或者系统内存被吃满。原因模型参数量跟硬件不匹配。7B 模型大概需要 8GB 内存32B 需要 32GB 以上。解决先跑小模型验证流程再逐步换大模型。ollama ps可以看当前加载的模型和资源占用。4.5 Docker 镜像加载后启动失败现象docker load成功但docker run报错退出。原因镜像架构跟内网服务器 CPU 架构不匹配比如在 x86 机器上加载了 arm64 的镜像。解决docker inspect 镜像名 | grep Architecture确认架构有网机器上拉镜像时指定--platform linux/amd64。5. 装完怎么验证从 Ollama API 到 RAG 知识库的完整链路检查装完之后别急着投数据先按链路逐层验证确保每一环都通。第一步验证 Ollama 服务本身。在内网服务器上执行# 检查服务状态 systemctl status ollama # 直接调 API 测试 curl http://localhost:11434/api/tags返回 JSON 里能看到已导入的模型列表说明服务正常。第二步从另一台内网机器验证远程访问curl http://服务器IP:11434/api/tags能返回同样的 JSON说明OLLAMA_HOST和防火墙都配对了。这一步不通后面全白搭。第三步验证模型推理curl http://服务器IP:11434/api/generate -d { model: deepseek-r1:7b, prompt: 你好, stream: false }返回里有response字段且内容正常说明模型加载和推理链路通了。第四步验证 Lobe Chat 或 Cherry Studio 的连接。Lobe Chat 里添加 Ollama 提供商地址填http://服务器IP:11434模型名填ollama list里看到的名称。发一条消息能正常回复就算通了。第五步验证 RAG 链路。用 Cherry Studio 导入一个测试文档问一个文档里有的问题看能否正确检索并回答。这一步通了整套内网 AI 知识库就算跑起来了。注意RAG 效果不好时先检查文本向量模型是否加载正确。ollama list里应该有nomic-embed-text或你用的其他 embedding 模型。从那以后我每次部署完内网环境都强制走一遍这五步验证不跳步。因为内网排查成本太高一次没验到位后面出问题就得从头查。希望帮到你。本文还有配套的精品资源点击获取