Ollama+Open Web UI部署DeepSeek
前言
本文使用Docker、Ollama以及Open WebUI在Linux部署本地模型,实现web式访问大模型。
工具安装
Ollama
运行命令
1 | curl -fsSL https://ollama.com/install.sh | sh |
Docker
1. 安装 Docker
步骤 1.1: 更新系统
在安装 Docker 之前,确保系统是最新的:
1 | sudo apt update |
步骤 1.2: 安装必要的依赖
安装一些必要的依赖包:
1 | sudo apt install -y apt-transport-https ca-certificates curl software-properties-common |
步骤 1.3: 添加 Docker 官方 GPG 密钥
1 | curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg |
步骤 1.4: 添加 Docker 官方仓库
1 | echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null |
步骤 1.5: 安装 Docker
更新包列表并安装 Docker:
1 | sudo apt update |
步骤 1.6: 验证 Docker 安装
运行以下命令,确保 Docker 安装成功:
1 | sudo docker --version |
步骤 1.7: 配置非 root 用户运行 Docker(可选)
将当前用户添加到 Docker 组:
1 | sudo usermod -aG docker $USER |
然后重新登录或运行以下命令使更改生效:
1 | newgrp docker |
2. 安装 Docker Compose
Docker Compose 用于运行多容器应用程序。
步骤 2.1: 下载 Docker Compose
运行以下命令下载最新版本的 Docker Compose:
1 | sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose |
步骤 2.2: 设置可执行权限
1 | sudo chmod +x /usr/local/bin/docker-compose |
步骤 2.3: 验证安装
1 | docker-compose --version |
环境更改
由于在Docker中访问Ollama需要监听网络接口,所以我们需要更改Ollama服务配置。
1 | vi /etc/systemd/system/ollama.service |
在[Service]下边增加:
1 | Environment="OLLAMA_HOST=0.0.0.0:11434" |
重新加载systemd
并且重启Ollama
1 | systemctl daemon-reload |
大模型下载
以DeepSeek-R1 32B为例
1 | ollama run deepseek-r1:32b |
跑完进度条自动进入命令行式聊天界面。
开启服务
1 | ollama serve |
UI安装
步骤 1:拉取 Open WebUI镜像
首先从 GitHub Container Registry 中提取最新的 Open WebUI Docker 镜像。
1 | docker pull ghcr.io/open-webui/open-webui:main |
第 2 步:运行容器
使用默认设置运行容器。此命令包含卷映射以确保持久数据存储。
1 | docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main |
重要标志
- 卷映射(
-v open-webui:/app/backend/data
):确保数据的持久存储。这可以防止容器重启期间数据丢失。 - 端口映射(
-p 3000:8080
):在本地机器的端口 3000 上公开 WebUI。
访问WebUI
容器运行后,访问Open WebUI:
进行简单的管理员配置之后便可以开始模型使用。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 James的成长之路!
评论