使用 Docker 安裝 Open WebUI 並連接 Ollama 的完整指南
Open WebUI 是一個基於網頁的圖形使用者介面 (GUI),讓您能更方便地管理和操作 Ollama 運行的大型語言模型 (LLM)。透過 Docker 安裝 Open WebUI 並連接到 Ollama,您可以輕鬆地透過網頁介面與本地部署的 LLM 模型互動。
1. 使用 Docker 安裝 Open WebUI
安裝 Open WebUI 有兩種方式:基本 Docker 指令安裝和使用 Docker Compose 安裝。
1.1 基本 Docker 指令安裝
您可以使用以下的 Docker 指令來安裝 Open WebUI:
Bash
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
各參數說明如下:
-d:在後台運行容器。
-p 3000:8080:將主機的 3000 端口映射到容器的 8080 端口,這樣您就可以透過 http://localhost:3000 在瀏覽器中訪問 Open WebUI。
--add-host=host.docker.internal:host-gateway:這是非常重要的一步,它設定讓容器可以連接到主機的服務。在 Docker 內部,host.docker.internal 會指向主機環境,這對於連接到主機上運行的 Ollama 服務至關重要。
-v open-webui:/app/backend/data:設定持久化儲存,將容器內的 /app/backend/data 目錄掛載到主機的 open-webui 卷宗。這確保了您的設定和資料在容器重新啟動或刪除後仍然保留。
--name open-webui:為容器命名為 open-webui,方便後續管理,例如停止、啟動或刪除容器。
--restart always:設定容器在失敗時自動重啟,確保服務的穩定性。
ghcr.io/open-webui/open-webui:main:指定使用 Open WebUI 的映像檔,:main 代表使用最新的主分支版本。
1.2 Docker Compose 安裝
使用 Docker Compose 可以更方便地同時部署 Ollama 和 Open WebUI。以下是一個 docker-compose.yml 檔案範例:
YAML:
version: "3.9"
services:
ollama:
image: ollama/ollama
ports:
- "11434:11434"
volumes:
- ollama:/root/.ollama
deploy:
resources:
reservations:
devices:
- driver: nvidia # 取消註釋以使用 NVIDIA GPU
count: 1
capabilities: [gpu]
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports:
- 3000:8080
depends_on:
- ollama
environment:
- OLLAMA_API_BASE_URL=http://ollama:11434 # 使用容器名稱 ollama
volumes:
- open-webui:/app/backend/data
restart: always
volumes:
ollama:
open-webui:
使用此設定檔,您可以執行以下指令來部署:
Bash:
docker-compose up -d
此指令會建立並啟動 docker-compose.yml 檔案中定義的所有服務。
1.3 GPU 注意事項
如果您有 NVIDIA GPU,可以取消 docker-compose.yml 檔案中 ollama 服務下的 deploy 部分的註釋,以啟用 GPU 加速。如果沒有 NVIDIA GPU,請保持註釋狀態。
2. 連接 Ollama 和 Open WebUI
2.1 設定 Ollama API 連接
在 docker-compose.yml 文件中,open-webui 服務的 environment 設定了 OLLAMA_API_BASE_URL 環境變數,將 Open WebUI 連接到 Ollama 的 API。在這個範例中,我們使用 http://ollama:11434,其中 ollama 是 Ollama 服務的容器名稱,11434 是 Ollama 的預設 API 端口。
2.2 使用容器名稱或 host.docker.internal
如果 Ollama 和 Open WebUI 在同一個 Docker 網路中(例如使用 Docker Compose),建議使用容器名稱(如 ollama)來連接。如果 Ollama 部署在主機或其他伺服器上,則需要將 OLLAMA_API_BASE_URL 修改為 http://host.docker.internal:11434(在基本 Docker 指令安裝中)或伺服器的 IP 地址或域名。
2.3 啟動 Open WebUI
安裝完成後,在瀏覽器輸入 http://localhost:3000 來存取 Open WebUI。如果 Ollama 和 Open WebUI 部署在遠端伺服器,則需要將 localhost 替換為伺服器的 IP 位址或域名。
2.4 登入和設定
初次登入 Open WebUI 需要註冊帳號,第一個註冊的用戶會成為管理員。登入後,可以在設定中選擇要使用的本地模型。如果要使用其他模型供應商的 API,也可以在設定中輸入 API 金鑰。
3. 其他注意事項
Docker 版本: 如果您沒有用過 Docker,您必須先安裝 Docker Desktop 或 Docker Engine 及其 dependencies。
網路連線: 確保網路連線正常,並且沒有防火牆或代理阻止連線。
檢查日誌: 如果 Open WebUI 無法啟動,可以檢查 Docker 的日誌來除錯:docker-compose logs open-webui 或 docker logs open-webui。
更新: 使用 docker-compose pull 和 docker-compose up -d 來更新 Open WebUI 到最新版本。
Ollama API 端口: Ollama 預設的 API 端口是 11434。
沒有留言:
張貼留言