Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用
前言:
因为想到有些环境可能没法使用外网的大模型,所以可能需要内网部署,看了一下ollama适合小型的部署,所以就尝试了一下,觉得docker稍微简单一点,就做这个教程的,本文中重要的内容都会给下载链接,方便下载。
下面这两个链接全部是我自己的文章,不是盗窃的!别给我审核不通过了!!!
ollama下载链接在这里,25年5月1号左右的版本
v0.6.7/OllamaSetup.exe下载链接_ollama 0.6.7 下载-CSDN博客
然后ollama的使用下载教程,我以前写过了,可以参照
超简单! 部署本地deepseek r1详细指南 附带安装包_deepseek r1一键包-CSDN博客
ollama到此为止。
OpenWebUI
两种方式,我选择docker形式
按道理先要去docker官网下载软件,我这里给一下官网的地址
Docker官⽹:https://www.docker.com/
中文网: Docker中文网 官网
还有我的百度网盘地址:
通过网盘分享的文件:Docker Desktop Installer.exe
链接: https://pan.baidu.com/s/128BPUTU6GHNOEidXYMGkEg?pwd=zbcf 提取码: zbcf
先下载下来
docker的安装
双击安装
这边要添加路径
重启电脑
接受协议
推荐设置
跳过登陆(最下面continnue without signing in)
skip跳过
顺利进入
docker的汉化
方便起见,直接我给出汉化包
通过网盘分享的文件:app.asar
链接: https://pan.baidu.com/s/1VeXuVCRo4us9aUqKPtT38g?pwd=5q7j 提取码: 5q7j
app.asar 替换原来的就好了,我估计是语言文件
重新打开就汉化成功
docker替换源
打开设置,找到docker引擎
把这里所有复制进去,换成国内源
{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"features": {"buildkit": true},"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","https://cr.console.aliyun.com","https://mirror.ccs.tencentyun.com"]
}
安装 open-webui
一句命令,复制,然后cmd打开,运行就好了
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
会下载一段时间
C:\Users\18178>docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Unable to find image 'ghcr.io/open-webui/open-webui:main' locally
main: Pulling from open-webui/open-webui
254e724d7786: Pull complete
eb0baa05daea: Pull complete
457229a5b852: Pull complete
b658f584ba6e: Pull complete
ef9a42a8925e: Pull complete
4f4fb700ef54: Pull complete
a328afb1a1bf: Pull complete
76dea603ebad: Pull complete
eb609898c965: Downloading [=========> ] 62.66MB/341.1MB
274002cd569b: Download complete
725a63749080: Downloading [==> ] 54.75MB/1.312GB
410e23914911: Downloading [=======================> ] 42.91MB/90.9MB
e4b0cd930f1a: Waiting
56dc55632e0c: Waiting
d297a6f5c191: Waiting
下载好了就得到了docker
点击3000:8000就可以访问,或http://127.0.0.1:3000/ 看到界面
随便注册,随便写邮箱,进去就ok
配置ollama+OpenWebUI
添加ollama模型,这里只要添加ollama的地址就好了,不用一个一个模型添加
打开设置 外部连接 添加链接 然后添加ollama的链接 http://localhost:11434
这里不用密码,但是不写不行,所以随便写一个123都可以
添加之后,就可以看到自己ollama下面的所有模型
可以对话
实现局域网可以连接上webui
由于我不是很懂网络层,所以很多都是教程博客摸索出来的,然后写这一部分的时候我也研究和学习一下
查看ip
首先看一下我们自己的ip win+r cmd 输入ipconfig
以我的电脑为例,这里显示出来两个地址
我电脑主机的ip: 192.168.149.80
我docker的ip: 172.29.128.1
其实我一开始搞不清楚ip,就是因为我不知道要访问主机的ip还是docker的ip
然后很重要的东西是环境变量
添加这两条环境变量:
OLLAMA_HOST=0.0.0.0:11434
OLLAMA_ORIGINS=*
1. OLLAMA_HOST=0.0.0.0:11434
- 作用:指定 Ollama 服务监听的 IP地址和端口。
0.0.0.0
表示监听所有网络接口(包括本地和外部网络),允许其他设备或容器访问服务。11434
是 Ollama 的默认端口,可以自定义(如8080
)。
- 典型场景:
- 需要从其他机器(如局域网内的另一台电脑)访问 Ollama。
- 在 Docker 容器中运行 Ollama 时,需通过此配置暴露端口。
2. OLLAMA_ORIGINS=*
- 作用:设置允许的 跨域请求来源(CORS)。
*
表示允许任何域(Origin)的请求(如浏览器前端应用),但存在安全风险,仅建议在受信任的本地网络中使用。- 若需限制域名,可设为
http://example.com,https://example.com
。
- 典型场景:
- 通过浏览器前端(如自建的 Web 应用)调用 Ollama 的 API。
前面的事情,按照我的理解就是:让局域网设备可以访问ollama的默认端口11434,允许外网调用ollama,大概就是这样,由于我对网络了解很浅,所以只能这样解释。
ping测试网络
局域网另一个设备,比如说电脑,或者用手机开热点,电脑连接热点,然后手机就是局域网的另一个设备,这里我身边只有手机,所以我拿手机打比方。
手机随便浏览器打开,访问ip(此处是主机的ip,不是docker的ip,原理讲实话,我不懂,希望有大佬可以教教我网络层)这里的ip是我的电脑的ip,本机的ip。
http://192.168.149.80:3000/
测试一下是否可以访问,然后找原来注册过的登录
顺利调用和使用模型
也可以提出自己的问题
整个内网部署到此结束。
结语:
当时也是考虑到,比如体制内单位,小型公司,希望保护隐私,同时避免数据泄露风险,可以搭建这样的解决方案,然后内网使用的话也比较高效率,所以自己做了这个实践,如果有需要可以拿去复现。
相关文章:

Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用
前言: 因为想到有些环境可能没法使用外网的大模型,所以可能需要内网部署,看了一下ollama适合小型的部署,所以就尝试了一下,觉得docker稍微简单一点,就做这个教程的,本文中重要的内容都会给下载…...
git push 报错:send-pack: unexpected disconnect while reading sideband packet
背景 新建了一个仓库,第一次push 代码文件,文件中有一个依赖的jar,有80MB,结果push的时候报错。 错误信息 error: RPC failed; HTTP 500 curl 22 The requested URL returned error: 500 send-pack: unexpected disconnect whi…...
考研英一真题学习笔记 2018年
2018 年全国硕士研究生招生考试 英语 (科目代码:201) Section Ⅰ Use of English Directions: Read the following text. Choose the best word(s) for each numbered blank and mark A, B, C or D on the ANSWER SHEET. (10 points) Trust i…...

ultralytics中tasks.py---parse_model函数解析
一、根据scale获取对应的深度、宽度和最大通道数 具体例如yaml文件内容如下: depth=0.33,那么重复的模块例如C2f原本重复次数是3,6,6,3,那么T对应的模型重复次数就是三分之一即1,1,2,1次。这个在后面定义的: width=0.25,max_channels=1024 原本c2=64,但经过make_div…...
Java知识框架
一、Java 基础语法 1. 基础语法 数据类型 基本类型:int, double, boolean, char 等 引用类型:String, 数组, 对象 变量与常量 final 关键字 作用域(局部变量、成员变量) 运算符 算术、逻辑、位运算 三元运算符 ? : 控制…...

2024年业绩增速大幅回退,泸州老窖未能“重回前三”
撰稿|行星 来源|贝多财经 回望过去的2024年,受制于购买力与消费需求的持续疲软,白酒行业的发展面临诸多复杂性与不确定性,“量价齐跌”犹如笼罩在各大企业头顶的一片阴云。 正如巴菲特所言:“当潮水退去时,才知道谁在…...

院校机试刷题第二天:1479 01字符串、1701非素数个数
一、1479 01字符串 1.题目描述 2.解题思路 方法一:暴力法 模拟过程,列出几个数据来a[1]1, a[2]2, a[3]3, a[4]5以此类推,这就是斐波那契数列,每一项都等于前两项之和,确定好a[1], a[2]即可。 方法二:动…...
【Vue.js 的核心魅力:深入理解声明式渲染】
Vue.js 的核心魅力:深入理解声明式渲染 在现代前端框架的浪潮中,Vue.js 以其轻量、易学、高效的特点赢得了广大开发者的青睐。其核心魅力之一,便是其优雅的**声明式渲染 (Declarative Rendering)**机制。理解声明式渲染不仅能帮助我们更好地…...

制作一款打飞机游戏48:敌人转向
射击功能 有一个重要的功能我们还没实现,那就是射击。目前,敌人还不能射击,这显然是不行的。因此,我们决定添加一个射击命令,暂时用一个显示圆圈的方式来表示射击动作。 编程语言的调试 有趣的是,我们创…...
鸿蒙OSUniApp打造多功能图表展示组件 #三方框架 #Uniapp
使用UniApp打造多功能图表展示组件 在当前移动应用开发领域,数据可视化已成为不可或缺的一部分。无论是展示销售数据、用户增长趋势还是其他业务指标,一个优秀的图表组件都能有效提升用户体验。UniApp作为一款跨平台开发框架,如何在其中实现…...
Chrome浏览器实验性API computePressure的隐私保护机制如何绕过?
一、computePressure API 设计原理与隐私保护机制 1.1 API 设计目标 computePressure是W3C提出的系统状态监控API,旨在: • 提供系统资源状态的抽象指标(非精确值) • 防止通过高精度时序攻击获取用户指纹 • 平衡开发者需求与用户隐私保护 1.2 隐私保护实现方式 // 典…...

RK3588 串行解串板,支持8路GMSL相机
RK3588 支持的 GMSL 相机接入数量取决于所使用的解串板型号及配置方案: xcDeserializer3.0 解串板 可接入最多 8 路 2M GMSL2 相机1。 xcDeserializer4.0 解串板 支持 4 路 2M GMSL2 相机1。 边缘计算盒解决方案 部分商用方案可实现 4 或 8…...

OracleLinux7.9-ssh问题
有套rac环境,db1主机无法ssh db1和db1-priv,可以ssh登录 db2和db2-priv [rootdb1 ~]# ssh db1 ^C [rootdb1 ~]# ssh db2 Last login: Wed May 14 18:25:19 2025 from db2 [rootdb2 ~]# ssh db2 Last login: Wed May 14 18:25:35 2025 from db1 [rootdb2…...

手机换IP真的有用吗?可以干什么?
在当今数字化时代,网络安全和个人隐私保护日益受到重视。手机作为我们日常生活中不可或缺的工具,其网络活动痕迹往往通过IP地址被记录和追踪。那么,手机换IP真的有用吗?它能为我们带来哪些实际好处?本文将为你一一解答…...
提示词设计模板(基于最佳实践)
1. 任务清晰化 模糊指令 ➜ 明确指令 ❌ "写一篇关于环保的文章" ✅ *"列出5种城市环保措施,并分别说明其对减少碳排放的影响(要求:数据支持案例)"* 2. 任务步骤化 案例:策划线上营销活动 1.…...

如何实现一个运动会计分系统?(C语言版)
一、需求分析 设计一个运动会计分系统,计分信息包括参加学校,参与项目,性别,名次个数,各个学校获得名次信息。该系统具有以下功能 数据录入: 链表或结构体数组组织数据数据报表: 依照规定的报表格式对数据打印报表数据排序: 按照要求对数据进行统计,含简单统计及综合统计…...
《P4391 [BalticOI 2009] Radio Transmission 无线传输 题解》
题目描述 给你一个字符串 s1,它是由某个字符串 s2 不断自我连接形成的(保证至少重复 2 次)。但是字符串 s2 是不确定的,现在只想知道它的最短长度是多少。 输入格式 第一行一个整数 L,表示给出字符串的长度。…...
tocmat 启动怎么设置 jvm和gc
在生产环境中部署 Java Web 应用时,我们经常需要给 Tomcat 设置 JVM 参数和 GC 策略,以提高性能、稳定性和可观察性。以下是完整教程: 一、Tomcat 设置 JVM 启动参数的方式 1. 修改 startup 脚本(推荐) 以 Linux 系统…...
[思维模式-37]:什么是事?什么是物?什么事物?如何通过数学的方法阐述事物?
一、基本概念 1、事(Event) “事”通常指的是人类在社会生活中的各种活动、行为、事件或情况,具有动态性和过程性,强调的是一种变化、发展或相互作用的流程。 特点 动态性:“事”往往涉及一系列的动作、变化和发展过程。例如&a…...
面向对象设计模式之代理模式详解
文章目录 面向对象设计模式之代理模式详解面向对象思想:现代软件开发的基石代理模式:巧妙的中间层设计JavaScript 语法点与代理模式的结合JavaScript 实现代理模式示例代理模式的应用场景 面向对象设计模式之代理模式详解 在现代软件开发的浩瀚领域中&a…...
C++【STL】(2)string
C【STL】string用法扩展 1. assign:为字符串赋新值 用于替换字符串内容,支持多种参数形式。 常用形式: // 用另一个字符串赋值 str.assign("Hello World");// 用另一个字符串的子串(从第6个字符开始,取5…...

嵌入式学习笔记 - STM32 ADC,多重转换,内部参考电压,过采样,逐次逼近原理,采样时间
一 多个ADC器件,多重转换速率 每个型号MCU通常由多个ADC器件,比如STM32F4有三个ADC器件,每个ADC器件有一个最大转换速率,一般为2.4Mhz,即一个ADC器件每秒最多转换2.4M次,两次转换之间需要有时间间隔&#…...

团结引擎 1.5.0 发布,抖音小游戏平台即将开放、Shader Graph功能新增…引擎能力再提升!
「团结引擎 1.5.0」来啦!本次技术更新的内容,涵盖了小游戏、团结引擎车机版、OpenHarmony、Shader Graph、Muse Chat、Hub&License、代码升级、Digital Asset Manager for Tuanjie、团结官方开源车模 Sample 几大方向。 小游戏 在 Tuanjie 1.5.0 版…...
如何下载 Microsoft SQL Server Management Studio 2019
SQL Server Management Studio 是什么,为什么你需要它 SSMS 是 Microsoft 用于管理 SQL Server 环境的主要工具。它为 Windows 用户提供了一个图形用户界面,本质上是数据库管理员和开发人员处理 SQL Server 的指挥中心。重点是——尽管你可能认为它与 SQL Server 捆绑在一起…...
【SSL部署与优化】HTTP/2与HTTPS的协同效应
HTTP/2与HTTPS的协同效应:为何HTTP/2强制要求TLS 1.2? HTTP/2是HTTP协议的现代升级版,旨在通过多路复用、头部压缩等技术提升性能。然而,HTTP/2的设计与部署与HTTPS(TLS加密)紧密相关,甚至强制…...

如何配置activemq,支持使用wss协议连接。
1、到阿里云申请一个证书,通过后下载jks证书。 2、配置activemq: 打开activemq安装目录中“conf/activemq.xml”,增加以下记录: <transportConnectors> <transportConnector name"wss" uri"…...
GO语言内存管理结构
文章目录 1、内存分区1.1、栈(Stack)1.2、堆(Heap) 2、堆内存管理结构2.1、内存分配器(MCache → MArena → MSpan → MHeap)2.2、大小分类(Size Class)2.3、分配流程 3、垃圾回收&a…...

初学c语言14(指针6)
一.sizeof和strlen的对比 1.sizeof 操作符,计算变量所占空间大小 2.strlen 库函数,函数原型为: 求的是字符串的长度,统计的是“\0”之前的字符个数 二.指针和笔试题解析 补充:数组名的意义 1.sizeof(数组名) 这…...

数字化转型-4A架构之技术架构
4A架构系列文章 数字化转型-4A架构(业务架构、应用架构、数据架构、技术架构) 数字化转型-4A架构之业务架构 数字化转型-4A架构之应用架构 数字化转型-4A架构之数据架构 数字化转型-4A架构之技术架构 一、 技术架构 Technology Architecture 1. 技…...
什么是SparkONYarn模式
1. 什么是 Spark on YARN? Spark on YARN 是 Apache Spark 的一种部署模式,允许 Spark 应用程序在 Hadoop YARN 集群上运行,充分利用 YARN 的资源管理和调度能力。这种模式将 Spark 与 Hadoop 生态深度集成,使企业能够在同一集群…...