我的环境:Win11 + WSL2 Ubuntu 22.04 + Docker,使用 Docker 部署 Ollama(模型服务)+ Open WebUI(网页界面)


1、先确认 Docker/Compose OK

在 WSL 的 Ubuntu 里执行:

docker version
docker compose version

都能输出版本号就行。


2、创建一键启动的 docker-compose.yml

在 WSL 里:

mkdir -p ~/llm && cd ~/llm
nano docker-compose.yml

粘贴下面内容:

services:
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    ports:
      - "11434:11434"
    volumes:
      - ollama:/root/.ollama
    restart: unless-stopped

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    ports:
      - "3000:8080"
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434
    volumes:
      - open-webui:/app/backend/data
    depends_on:
      - ollama
    restart: unless-stopped

volumes:
  ollama:
  open-webui:

启动:

docker compose up -d

检查容器:

docker ps

3、在 Windows 浏览器打开 WebUI

通常直接打开:

  • http://localhost:3000

第一次会让你创建管理员账号(本地用就随便设)。

如果 localhost 访问不到:在 WSL 里 ip addr 看 WSL 的 IP,用 http://<WSL_IP>:3000 也能访问(Windows 一般能连到 WSL 的地址)。


4、拉一个“小模型”先验证能聊起来

先拉最轻的,保证 100% 跑通:

docker exec -it ollama ollama pull phi3:mini

然后在 Open WebUI 里选择模型 phi3:mini 开始对话。

如果你更想中文更稳一点,再拉一个 7B:

docker exec -it ollama ollama pull qwen2.5:7b-instruct

32GB 内存跑 7B(量化)通常没问题;14B 在纯 CPU 下会明显慢。


5、快速验证 Ollama 服务是否正常

在 WSL 里:

curl http://localhost:11434/api/tags

能看到模型列表 JSON 就说明模型服务 OK。


6、最常见问题排查

A. WebUI 打开了但看不到模型 / 无法对话

  • 先看 ollama 是否正常:

    docker logs -n 80 ollama
  • 再看 webui 是否连上 ollama:

    docker logs -n 80 open-webui

B. 下载模型很慢

  • 可以先用小模型(phi3 mini)跑通,再考虑换网络/代理。

C. 端口占用

如果你本机 3000 被占,用别的端口,比如把 compose 里 3000:8080 改成 3001:8080,然后:

docker compose up -d

7、常用维护命令

停止:

docker compose down

更新镜像:

docker compose pull
docker compose up -d

查看已拉模型:

docker exec -it ollama ollama list

docker logs -n 80 open-webui
curl http://localhost:58011/api/tags