docker搭建deepseek运行环境&&open-webui
这篇文章没有什么实用价值,仅作为快速体验ollama运行环境。或者当做一个附加工具,用来管理和查看ollama环境。
docker-compose.yaml
这个脚本将同时启动ollama 和 open-webui
version: "3"
services:
ollama:
image: harbor.iovhm.com/hub/ollama/ollama:0.5.12
container_name: ollama
restart: always
privileged: true
ports:
- "11434:11434"
volumes:
- ./ollama:/root/.ollama
networks:
- vpclub-bridge
# docker-compose --profile open-webui up -d
open-webui:
# CPU版
image: harbor.iovhm.com/public/open-webui/open-webui:main
# GPU版
# image: harbor.iovhm.com/public/open-webui/open-webui:main-gpu
container_name: open-webui
restart: always
privileged: true
ports:
- "3000:8080"
volumes:
- ./open-webui:/app/backend/data
environment:
# 如果你的 ollama 服务器不在本机,请修改此地址,如果OLLAMA_BASE_URLS被设置,则使用OLLAMA_BASE_URLS
# - OLLAMA_BASE_URL=http://ollama:11434
# 如果你的 ollama 服务器不在本机,请修改此地址,可以使用分号分割多个地址提供负载均衡能力
- OLLAMA_BASE_URLS=http://ollama:11434
# 关闭 openai api 否则会因为连不上openai而卡界面
- ENABLE_OPENAI_API=false
# 禁用自带的 Arena Model模型(竞技场模型)
- ENABLE_EVALUATION_ARENA_MODELS=false
# 关闭社区分享功能
- ENABLE_COMMUNITY_SHARING=false
# 离线模式,不自动从Internet下载模型(非必须,有魔法的话不需要设置)
# - HF_HUB_OFFLINE=true
# 默认的语义向量模型引擎(非必须)
# - RAG_EMBEDDING_ENGINE=ollama
# 默认的语义向量模型(非必须)
# - RAG_EMBEDDING_MODEL=nomic-embed-text:latest
networks:
- vpclub-bridge
networks:
vpclub-bridge:
external:
name: vpclub-bridge
测试一下服务
打开浏览器,输入ollama的服务地址, http://ip:11434 ,界面提示:Ollama is running ,则表示ollama安装成功了
输入open-webui的地址,http://ip:3000 , 则可以看到open-webui的地址。
但是这个时候可能是白屏,什么都看不到;或者好不容易刷出来界面,设置好用户名密码进入系统后,也是白屏,此时应该去查看open-webui容器的出错提示,多半都是被墙拉取不到镜像的原因。那你需要魔法。
界面打不开,或者进去了也很卡问题解决
- 打开open-webui等很久,不出来界面,白屏
因为软件有很多外部依赖要下载,如果被墙,下载不到、就一直卡住,可以先不使用openai和不使用内置的语义向量模型模型
# 修改open-webui的环境变量设置
# 关闭 openai api 否则会因为连不上openai而卡界面
- ENABLE_OPENAI_API=false
# 默认的RAG引擎(非必须)
- RAG_EMBEDDING_ENGINE=ollama
# 默认的语义向量模型(非必须)
- RAG_EMBEDDING_MODEL=nomic-embed-text:latest
进入软件后,每次刷新都要等很久
关闭使用openai外部链接,修改语义向量模型
修改语义向量模型
进入到ollama容器下载模型
# 安装完成后进入ollma容器
docker exec -it ollama /bin/bash
# 查看ollama版本
ollama -v
# 下载deepseek模型
ollama run deepseek-r1:7b
# 语义向量模型
ollama pull nomic-embed-text
查看系统当前都安装了什么模型
配置知识库
点击上传文件,建议的文件类型为markdown,使用 #### 进行段落区分,如果保存知识库出错,那是因为没有设置正确的语义向量模型
为模型关联知识库,或者在聊天界面使用 # 引用知识库
在聊天界面使用# 引用知识库
那我们就可以开始体验deepseek能力啦,来看看deepseek静静的装B