ARTIFACT // DOCKER-COMPOSE.OLLAMA-WEBUI.YML (YAML)
Ollama + Open WebUI 持久化、备份与安全回滚栈 (Docker Compose) (docker-compose.ollama-webui.yml)
锁定镜像版本、显式挂载宿主机持久化目录(支持 30 秒快照备份与跨版本回滚)、关闭遥测及 KV Cache 优化。
[核心实测结论 / TL;DR]本配置包「Ollama + Open WebUI 持久化、备份与安全回滚栈 (Docker Compose)」(文件名:docker-compose.ollama-webui.yml,格式:YAML)是 Tinker AI 实测工坊配套指南《ollama-openwebui-persistence-backup》的参数化生产模板。支持在本地浏览器实时定制 Open WebUI 宿主机端口 (WEBUI_PORT=3000)、Ollama 镜像版本 (OLLAMA_TAG=0.5.7)、Open WebUI 镜像版本 (WEBUI_TAG=v0.5.10)、宿主机持久化目录 (DATA_ROOT=./tinker-local-ai-data)、KV Cache 量化精度 (KV_CACHE_TYPE=q8_0) 等 5 项核心变量,默认遵循 127.0.0.1 回环绑定与最小权限规范。
01 // HOMELAB本地 AI / HomeLab· 验证日期:2026-10-23
查看全部 42 套配置附件 →docker-compose.ollama-webui.yml
查看配套实测指南 →Ollama + Open WebUI 持久化、备份与安全回滚栈 (Docker Compose)
锁定镜像版本、显式挂载宿主机持久化目录(支持 30 秒快照备份与跨版本回滚)、关闭遥测及 KV Cache 优化。
参数化定制变量 (Variables — 自动保存在本地浏览器)
UTF-8 编码 · 零延迟实时编译
# Tinker AI Verified Stack — Ollama + Open WebUI (Guide #3)
# Pre-upgrade backup: tar -czf backup-$(date +%F).tar.gz ./tinker-local-ai-data
services:
ollama:
image: ollama/ollama:0.5.7
container_name: tinker-ollama
restart: unless-stopped
ports:
- "127.0.0.1:11434:11434"
environment:
- OLLAMA_HOST=0.0.0.0:11434
- OLLAMA_FLASH_ATTENTION=1
- OLLAMA_KV_CACHE_TYPE=q8_0
- OLLAMA_NUM_PARALLEL=2
- OLLAMA_KEEP_ALIVE=15m
volumes:
- ./tinker-local-ai-data/ollama:/root/.ollama
open-webui:
image: ghcr.io/open-webui/open-webui:v0.5.10
container_name: tinker-open-webui
restart: unless-stopped
depends_on:
- ollama
ports:
- "127.0.0.1:3000:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
- RAG_EMBEDDING_ENGINE=ollama
- RAG_EMBEDDING_MODEL=bge-m3:latest
- ENABLE_RAG_HYBRID_SEARCH=true
- RAG_TOP_K=5
- SCARF_NO_ANALYTICS=true
- DO_NOT_TRACK=true
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
- ./tinker-local-ai-data/open-webui:/app/backend/data
PARAMETER SPECIFICATION // 参数化变量规范说明表
「docker-compose.ollama-webui.yml」可定制环境变量与默认值说明
本配置模板(YAML 格式)支持 5 项运行时参数注入,所有替换均在本地浏览器内完成。
| 模板占位符 | 参数用途说明 | 安全默认值 | 填写示例 |
|---|---|---|---|
{{WEBUI_PORT}} | Open WebUI 宿主机端口 | 3000 | 3000 |
{{OLLAMA_TAG}} | Ollama 镜像版本 | 0.5.7 | 0.5.7 |
{{WEBUI_TAG}} | Open WebUI 镜像版本 | v0.5.10 | v0.5.10 |
{{DATA_ROOT}} | 宿主机持久化目录 | ./tinker-local-ai-data | ./tinker-local-ai-data |
{{KV_CACHE_TYPE}} | KV Cache 量化精度 | q8_0 | f16 | q8_0 | q4_0 |
PAIRED HARDWARE MANIFEST // 配套实测环境与边界记录
配套指南《Ollama + Open WebUI:安装、持久化、备份、升级和恢复实战》验证基线
实测硬件与操作系统 (Hardware & OS)
Linux HomeLab(Ubuntu 24.04 · Docker Compose v2.29)及 macOS 宿主机 + Docker WebUI 双环境实测
锁定软件栈与模型版本 (Pinned Versions)
Ollama 0.5.7Open WebUI v0.5.10SQLite 3 (webui.db)
离线与安全边界 (需显式配置环境变量以阻断启动期外部连接)
“本地部署”不自动等于所有环节离线!必须配置 `SCARF_NO_ANALYTICS=true` 并指定本地 `RAG_EMBEDDING_ENGINE=ollama`,否则容器启动时会尝试连接 HuggingFace。
已知限制与失败边界 (Known Limits)
- Open WebUI 升级启动时会自动对 `webui.db` 执行 Alembic 数据库结构迁移;如果未提前备份数据目录,遇到新版本 Bug 直接改回旧镜像 Tag 会因数据库 Schema 不兼容而崩溃。
- 切勿依赖难以定位的匿名卷,一旦误执行 `docker compose down -v` 会导致历史对话与提示词全部丢失;推荐使用显式宿主机目录挂载。
DEPLOYMENT CHECKLIST // 配置落地核验步骤
部署 docker-compose.ollama-webui.yml 后的 3 步验收清单
- 已在配置文件中锁定明确版本号,杜绝 `:latest` 或 `:main` 浮动标签。
- 已演练停止容器、打包备份 `open-webui` 数据目录并验证压缩包可正常解压还原。
- 已关闭未使用的云端 API 连接,并将向量嵌入模型指向本地 Ollama。