随着 AI 技术的不断发展,本地部署大语言模型的需求日益增加。本文将详细介绍如何在群晖 NAS 上通过 Docker 部署 Ollama + Open WebUI + DeepSeek,实现一个高效、安全的本地 AI 环境。以下是详细步骤:
1. 环境准备
- 硬件配置:本教程使用的是黑群晖+ G4600T + 16G 内存。
- 系统版本:群晖 DSM 7.2。
- 前置工具:确保已安装 Docker。
2. 拉取 Open WebUI 镜像
通过 SSH 连接到 NAS,切换到 root 用户:
sudo -i
拉取 Open WebUI 镜像:
docker pull ghcr.io/open-webui/open-webui:ollama
文件比较大,耐心等待。(我自己等了几个小时)
3. 创建数据文件夹
在 Docker 文件夹中创建 ollama 和 open-webui 文件夹,用于存储模型和配置数据:
mkdir -p /volume1/docker/ollama
mkdir -p /volume1/docker/open-webui
4. 使用群晖 Docker 图形化界面部署容器
- 登录群晖 DSM,进入 Docker 管理界面。
- 创建容器,选择拉取的 open-webui:ollama 镜像。
- 配置容器:
- 端口映射:将容器的 8080 端口映射到 NAS 的一个本地端口(如 8887)。
- 卷挂载:
- 将 /volume1/docker/ollama 映射到 /root/.ollama。
- 将 /volume1/docker/open-webui 映射到 /app/backend/data。
- 环境变量:删除值为空的环境变量。
- 启动设置:勾选 自动重新启动。
- 完成配置后,启动容器。
5. 验证 Ollama 安装
通过以下命令查看正在运行的容器:
root@HXH:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7914c27a7494 ghcr.io/open-webui/open-webui:ollama "bash start.sh" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:8887->8080/tcp, :::8887->8080/tcp ghcr-io-open-webui-open-webui-1
进入 Ollama 容器:
docker exec -it 7914c27a7494 /bin/bash
在容器内运行以下命令,查看 Ollama 版本:
ollama -v
如果显示版本号(如 0.5.7),则表示安装成功。
6. 下载并运行 DeepSeek 模型
以 DeepSeek-R1 1.5B 模型为例,执行以下命令下载模型:
ollama run deepseek-r1:1.5b
下载完成后,运行以下命令查看已加载的模型:
ollama list
此时,你应该能看到已下载的 DeepSeek 模型。
7. 配置 Open WebUI
- 打开浏览器,访问 http://<NAS_IP>:8887。
- 注册管理员账号并登录。
- 登录成功后,进入主页,页面左上角会显示当前使用的模型,并支持模型切换。
8. 性能优化与注意事项
- 内存优化:如果内存不足,可以尝试使用量化版本的模型,如 deepseek-r1:1.5b-q4_0。
- GPU 加速:如果 NAS 支持 GPU 加速,可以通过安装 NVIDIA 驱动并配置 CUDA 来提升性能。
- 端口冲突:如果端口 8887 被占用,可以修改为其他未使用的端口。
9. 常见问题排查
- Ollama 服务无法启动:
- 查看日志:journalctl -u ollama -f。
- 检查端口冲突并修改端口。
- 模型加载失败:
- 重新初始化模型:ollama rm deepseek-r1 && ollama pull deepseek-r1。
总结
通过以上步骤,你可以在群晖 NAS 上成功部署 Ollama + Open WebUI + DeepSeek,实现本地化的 AI 模型运行环境。此方案不仅安全可靠,还能满足日常的 AI 应用需求。希望本文对你有所帮助!
版权声明:本文由yiSty原创,转载需注明原文链接。