使用Docker安装Ollama及Open-WebUI完整教程

作者:吴业亮
博客:wuyeliang.blog.ZEEKLOG.net

一、Ollama 简介及工作原理

1. Ollama 简介及原理

  • 简介:Ollama 是一款轻量级、开源的大语言模型(LLM)运行工具,旨在简化本地部署和运行大语言模型的流程。它支持 Llama 3、Mistral、Gemini 等主流开源模型,用户无需复杂配置即可在本地设备(CPU 或 GPU)上快速启动模型,适用于开发测试、本地智能应用搭建等场景。
  • 工作原理
    • 采用模型封装机制,将大语言模型的运行环境、依赖库及推理逻辑打包为标准化格式,实现模型的一键下载、启动和版本管理。
    • 通过优化的推理引擎适配硬件架构,支持 CPU 基础运行和 GPU 加速(如 NVIDIA CUDA),减少资源占用并提升响应速度。
    • 提供简洁的 REST API 和命令行接口,降低开发者集成门槛,无需深入了解模型底层细节即可调用。
    • 支持容器化部署,确保跨环境一致性,避免依赖冲突问题。

2. Open-WebUI 简介及原理

  • 简介:Open-WebUI 是一款开源的可视化界面工具,专为 Ollama 设计,提供直观的交互界面用于管理和使用大语言模型。它支持模型切换、对话历史记录、参数调整等功能,让本地大语言模型的使用更便捷。
  • 工作原理
    • 作为前端交互层,通过 API 与 Ollama 后端通信,接收用户输入并将其转发给 Ollama 进行模型推理。
    • 解析 Ollama 返回的结果并以自然语言对话形式展示给用户,同时记录对话历史并支持上下文关联。
    • 提供模型管理功能,可直接在界面中下载、启动、停止 Ollama 支持的模型,简化模型运维流程。
    • 支持容器化部署,与 Ollama 容器通过网络互通,实现快速搭建完整的本地大语言模型交互系统。

二、安装Docker

1. 安装Docker依赖

apt-getinstall ca-certificates curl gnupg lsb-release 

2. 添加阿里云Docker软件源

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg |sudo apt-key add - 

3. 配置系统软件源

编辑/etc/apt/sources.list文件,添加以下内容(清华大学Ubuntu镜像源):

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse # 安全更新软件源 deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse # deb-src http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse # 预发布软件源,不建议启用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse # # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse 

4. 添加Docker软件源并更新密钥

add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DDCAE044F796ECB0 

5. 安装Docker

apt-getinstall docker-ce docker-ce-cli containerd.io 

6. 验证Docker安装

docker -v 

7. 配置Docker国内镜像源

7.1 编辑配置文件/etc/docker/daemon.json
{"registry-mirrors":["https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com","https://docker.m.daocloud.io","https://ghcr.io","https://mirror.baidubce.com","https://docker.nju.edu.cn"]}
7.2 重新加载并重启Docker
systemctl daemon-reload systemctl restart docker 

三、安装英伟达显卡驱动(GPU支持)

1. 配置存储库

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey |sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg 

2. 设置源

创建并编辑nvidia-container-toolkit.list文件:

# 内容如下 deb https://mirrors.ustc.edu.cn/libnvidia-container/stable/deb/$(ARCH) / deb https://mirrors.ustc.edu.cn/libnvidia-container/stable/ubuntu18.04/$(ARCH) / #deb https://mirrors.ustc.edu.cn/libnvidia-container/experimental/deb/$(ARCH) /#deb https://mirrors.ustc.edu.cn/libnvidia-container/experimental/ubuntu18.04/$(ARCH) /

3. 更新包列表

sudoapt-get update 

4. 安装NVIDIA Container Toolkit

apt-getinstall -y nvidia-container-toolkit 

5. 配置Docker以支持Nvidia驱动

nvidia-ctk runtime configure --runtime=docker 

6. 重启Docker服务

systemctl restart docker.service 

四、使用Docker安装Ollama

1. 拉取Ollama镜像

官方镜像:

docker pull ollama/ollama:latest 

国内镜像(推荐):

docker pull dhub.kubesre.xyz/ollama/ollama:latest 

2. 启动Ollama容器

docker run -d \ --gpus=all \ --restart=always \ -v /root/project/docker/ollama:/root/project/.ollama \ -p 11434:11434 \ --name ollama \ ollama/ollama 
说明:此配置会让Ollama将模型保持加载在内存(显存)中

五、使用Docker安装Open-WebUI

1. 安装Main版本

docker run -d \ -p 15027:8080 \ --gpus all \ --add-host=host.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.nju.edu.cn/open-webui/open-webui:main 

2. 安装CUDA版本(GPU加速)

docker run -d \ -p 15027:8080 \ --gpus all \ --add-host=host.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.nju.edu.cn/open-webui/open-webui:cuda 

3. 访问Open-WebUI

打开浏览器访问以下地址进行登录:

http://192.168.1.129:15027/auth 

Read more

DevUI 组织 2025 年度运营报告:扎根 AtomGit,开源前端再启新程

DevUI 组织 2025 年度运营报告:扎根 AtomGit,开源前端再启新程

在开源浪潮席卷全球的今天,DevUI 始终以「打造企业级前端开源解决方案」为初心,依托 AtomGit 平台的生态优势稳步前行。2025 年,我们聚焦组件迭代、生态共建与社区连接,在技术深耕与开源协作中收获颇丰。现将全年发展足迹与未来规划分享如下,致谢每一位同行者的支持! 一、年度核心成果:数据见证成长 * 项目矩阵持续扩容:新增 MateChat-React、react-devui 等 4 个衍生项目,形成覆盖 Vue、Angular、React 三大框架的全栈组件生态,累计开源仓库达 7 个 * 社区活力显著提升:全年接收 PR 提交 300+,Star 数稳步增长至 3.02k,累计下载量超 46.08k 次,核心项目 MateChat、vue-devui、ng-devui

By Ne0inhk
从Web到AI:Skills市场与共享经济实战指南

从Web到AI:Skills市场与共享经济实战指南

图片来源网络,侵权联系删。 Skills生态系统相关系列文章 从Web到AI:构建行业专属Skills生态系统的实战指南与未来展望 从Web到AI:金融/医疗/教育行业专属Skills生态系统设计实战 从Web到AI:Skills市场与共享经济实战指南 文章目录 * 1. 当NPM遇见AI技能市场 * 2. Web生态与Skills市场的基因同源性 * 2.1 核心概念映射表(Web→AI) * 2.2 企业级Skills市场架构 * 3. 用共享经济思维重构Skills交易 * 3.1 交易模型设计(类比Stripe支付) * 3.2 技能质量门禁(类比NPM质量评分) * 4. 三端协同Skills市场系统 企业级实战 * 4.1 项目结构(Spring Cloud + Vue3 + 小程序) * 4.2 核心功能代码实现 * 5. Web开发者转型Skills市场的痛点解决方案 * 5.

By Ne0inhk
微信小程序webview postmessage通信指南

微信小程序webview postmessage通信指南

需求概述 在微信小程序中使用 web-view 组件与内嵌网页进行双向通信,主要通过 postMessage 实现。以下是完整的配置和使用方法: 通信指南 微信小程序webview官方文档 1. 基础配置 小程序端配置 // app.json 或 page.json { "usingComponents": {}, "permission": { "scope.webView": { "desc": "用于网页和小程序通信" } } } 网页端配置 <!-- 内嵌网页需引入微信JS-SDK --> <script src="https://res.wx.qq.com/open/

By Ne0inhk
Web Worker:让前端飞起来的隐形引擎

Web Worker:让前端飞起来的隐形引擎

目录 Web Worker:让前端飞起来的隐形引擎 一、什么是 Web Worker? 1、为什么需要 web worker 2、什么是 web worker 二、基本使用方法 1、创建一个 Worker 文件(worker.js) 2、主线程引入并使用 三、实战案例:在前端处理大批量数据 1、Worker 文件(sortWorker.js) 2、主线程调用 四、Vue3 中如何优雅使用 Web Worker 1、新建 Worker 文件(worker.js) 2、在 Vue3

By Ne0inhk