前言

在linux环境下,使用docker部署ollama+deepseek-r1:1.5b+open-webui,实现私有化部署DeepSeek。

部署过程

安装docker

使用脚本安装docker、docker-compose

1
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)

方式一:docker命令安装

1
2
3
4
5
6
7
8
#安装安装ollama
docker run -d -v /data/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
#安装deepseek-r1:1.5b
docker exec -it ollama ollama run deepseek-r1:1.5b
#安装open-webui
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v /data/openwebui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:v0.6.22

export HF_ENDPOINT=https://hf-mirror.com

open-webui镜像拉取较慢的情况可换源拉取并修改镜像标签,具体命令如下

1
2
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/open-webui/open-webui:v0.6.22
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/open-webui/open-webui:v0.6.22 ghcr.io/open-webui/open-webui:v0.6.22

方式二:compose文件方式安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
vi ai.yml
#################################################
services:
ollama:
image: ollama/ollama
container_name: ollama
ports:
- "11434:11434"
volumes:
- "/data/ollama:/root/.ollama"
restart: always
entrypoint: ["sh", "-c", "ollama run deepseek-r1:1.5b & /bin/ollama serve"]
networks:
ai:
ipv4_address: 172.20.110.11
open-webui:
image: ghcr.io/open-webui/open-webui:v0.6.22
container_name: open-webui
ports:
- "3000:8080"
volumes:
- "/data/openwebui:/app/backend/data"
extra_hosts:
- "host.docker.internal:host-gateway"
restart: always
networks:
ai:
ipv4_address: 172.20.110.12

networks:
ai:
driver: bridge
ipam:
config:
- subnet: 172.20.110.0/24

########################################################

#执行部署
docker compose -f ai.yml up -d

执行完成后,如果在open webui中没有本地模型deepseek-r1:1.5b,输入docker logs -f ollama命令查看,ollama下载deepseek-r1:1.5b模型的进度,等待进度完成即可。

添加知识库

(1)在Open WebUI中,选择管理员面板-设置-文档,打开绕过嵌入和检索选项并保存。

(2)在工作空间-知识库中创建知识库,并将文件上传到知识库即可。

调用本地知识库

在对话框内输入#,调用对应知识库,大模型会引用并回答相关内容。