- 先安装Ollama(安装方法:http://www.gdcool.net/post-411.html)
- 拉取运行deepseek-r1:1.5b
ollama run deepseek-r1:1.5b
- 确认Ollama运行状态
curl http://localhost:11434 # 应返回Ollama版本信息
-
安装Docker
# 1. 安装Docker(如果尚未安装)并配置镜像加速 # 注意:已安装Docker可跳过此步骤 sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun # 配置国内镜像加速器 sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": [ "https://registry.docker-cn.com", "https://mirror.baidubce.com", "https://docker.nju.edu.cn" ] } EOF # 重启Docker服务 sudo systemctl daemon-reload sudo systemctl restart docker # 验证Docker安装 docker version | grep "Version:" # 应显示Client和Server版本信息
-
安装Open WebUI
1.拉取国内镜像加速
# 使用南京大学镜像源替代官方地址(解决下载慢的问题) docker pull ghcr.nju.edu.cn/open-webui/open-webui:main # 重命名镜像为官方标签
2.启动Open WebUI容器
docker run -d -p 3003:8080 \ --add-host=host.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \ --name open-webui \ ghcr.io/open-webui/open-webui:main
三、验证步骤
1.检查容器状态
docker ps -f name=open-webui # 应显示STATUS为Up
2.外网访问验证
- 浏览器访问
[http://218.17.188.95:3003 ]
- 首次访问需注册账号,登录后应能看到DeepSeek-R1模型四、防火墙配置(如无法外网访问)
- 浏览器访问
-
- 查看端口是否占用进程
sudo lsof -i :3003 # 查看3003端口占用进程 #如果占用,删除镜像,换3002端口重新docker run
- 查看端口是否占用进程
解决Docker重启后Open WebUI容器消失
1、查看所有容器(包括已停止的)
docker ps -a # 检查是否存在Exited状态的容器
若存在open-webui
但状态为Exited,直接执行:
docker start open-webui
2、容器丢失时的重建方案
# 使用原参数重建容器(含持久化数据卷)
docker run -d \
--name open-webui \
-p 3000:8080 \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
-v open-webui:/app/backend/data \ # 复用原数据卷
--restart unless-stopped \ # 关键重启策略
ghcr.io/open-webui/open-webui:main
解决Open webui打开很慢的问题
NGINX反向代理(可选)
server {
listen 888;
server_name chat.xxx.com;
# 增加响应缓冲区
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
# 强制UTF-8编码
charset utf-8;
location / {
proxy_pass http://228.177.188.95:3003;
# 基础代理设置
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# WebSocket支持(关键修复)
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400s;
proxy_send_timeout 86400s;
# 处理大文件上传
client_max_body_size 100M;
}
# 禁用gzip压缩避免数据损坏
proxy_set_header Accept-Encoding "";
}