內容概述
Open WebUI 是一個可擴展、功能豐富且使用者友善的自架 AI 平台,設計上可完全離線運作。
它支援多種大型語言模型(LLM)執行器,如 Ollama 和相容於 OpenAI 的 API,並內建檢索增強生成(RAG)引擎,為 AI 部署提供完整的解決方案。
應用場景
Open WebUI 適用於需要自架 AI 解決方案的各種情境,包括:
- 企業內部部署,確保資料隱私和安全。
- 教育機構用於教學和研究,無需依賴外部服務。
- 開發者測試和開發自訂 AI 模型。
- 需要離線運作的遠端或受限環境。
技術特點
- 簡易安裝:可透過 pip、uv、Docker 或 Kubernetes(kubectl、kustomize 或 helm)安裝,並提供
:ollama和:cuda標籤的映像檔。 - Ollama/OpenAI API 整合:輕鬆整合相容於 OpenAI 的 API,與 Ollama 模型進行多樣化對話。可自訂 OpenAI API URL,以連接 LM Studio、GroqCloud、Mistral、OpenRouter 等服務。
- 細緻的權限和使用者群組:管理員可建立詳細的使用者角色和權限,確保安全的使用環境。
- 響應式設計:在桌上型電腦、筆記型電腦和行動裝置上皆能流暢使用。
其他整合
Open WebUI 支援多種整合,包括:
- 工具(Tools):可匯入社群網站上的各種工具,並指派給支援函式呼叫的 LLM,擴充功能。
- 管線(Pipelines):提供模組化、可自訂的工作流程,與任何支援 OpenAI API 規格的用戶端相容,輕鬆擴充功能並整合自訂邏輯。
安裝步驟
以下是使用 Docker 安裝 Open WebUI 的步驟(Ollama 已安裝在同一台主機上):
- 拉取 Open WebUI 映像檔:
docker pull ghcr.io/open-webui/open-webui:main- 執行容器:
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上述指令會在本機的 3000 埠提供 WebUI,資料保存在名為 open-webui 的 Docker 資料卷中。若 Ollama 安裝在另一台伺服器,可加上 -e OLLAMA_BASE_URL=https://example.com 指定位址。
:main 標籤永遠指向最新版本,可能包含不相容的變更;團隊或正式環境建議固定版本,例如 ghcr.io/open-webui/open-webui:v0.12.4。
存取和操作
安裝完成後,可透過瀏覽器前往 http://localhost:3000 存取 Open WebUI。
第一位註冊的帳號會自動成為管理員,之後系統會自動關閉註冊功能;若管理員重新開放註冊,新帳號預設為「pending」狀態,需經管理員核准才能使用。
若出現無法連線到 Ollama 的錯誤,通常是容器內無法連到主機的 127.0.0.1:11434,可改用 --network=host 參數執行(此時改為透過 http://localhost:8080 存取)。
對外開放前的安全設定
官方文件說明 Open WebUI 是為私有、可信任的網路設計,對外開放前請先完成以下設定:
- 先建立管理員帳號:部署完成後立即註冊第一個帳號(即管理員),避免他人搶先註冊;請使用 v0.9.0 以上版本(已修正首位管理員建立的競態問題 CVE-2026-45675)。
- 放在 VPN 或有驗證的反向代理後方:官方建議使用 VPN(WireGuard、Tailscale)、零信任存取代理(Cloudflare Access 等),或具備驗證與 IP 白名單的反向代理。
- 以 HTTPS 對外:Open WebUI 不自行處理 TLS,需由 Nginx、Caddy 等反向代理提供 HTTPS,並設定
WEBUI_SESSION_COOKIE_SECURE=true。 - **設定固定的
WEBUI_SECRET_KEY:**用於簽署登入權杖;多台執行個體時必須使用相同金鑰,可用openssl rand -base64 32產生。 - 限制 CORS:
CORS_ALLOW_ORIGIN預設為*,請改為您的網域,例如https://chat.yourcompany.com。 - 維持註冊關閉與 pending 預設角色:除非必要,不要開放
ENABLE_SIGNUP,並保留DEFAULT_USER_ROLE=pending。
小技巧
- 更新容器:更新前先備份資料卷並閱讀 Release Notes。若要用 Watchtower 自動更新,官方文件指出原本的
containrrr/watchtower已停止維護,請改用nickfedor/watchtower:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock nickfedor/watchtower --run-once open-webui- 啟用 GPU 支援:若有 NVIDIA GPU,安裝 NVIDIA Container Toolkit 後,可使用
--gpus all參數執行:cuda映像檔,以提升效能。 - 連接 Ollama 或 OpenAI 相容服務:以環境變數
OLLAMA_BASE_URL指定 Ollama 位址;以OPENAI_API_BASE_URL連接不同的 OpenAI 相容服務。
教學影片
影片來源:The Personal AI Architecture/YouTube
參考連結
成本與風險摘要
- 適用對象與規模:想為個人、團隊或企業內部提供自架 ChatGPT 式介面的使用者;單機 Docker 即可運作,多台執行個體需共用金鑰與資料庫。
- 成本(硬體、訂閱、授權):軟體免費自架,授權為 Open WebUI License,需保留「Open WebUI」品牌標示(詳見官方 LICENSE)。Open WebUI 本身只是介面,模型推論的硬體或 API 費用另計。
- 維護時間:需定期更新容器、備份資料卷;
:main可能帶來不相容變更,固定版本可降低升級風險。 - 資安注意事項:部署後立即建立管理員、以 HTTPS 與 VPN/驗證代理對外、設定
WEBUI_SECRET_KEY與 CORS、保持註冊關閉。 - 常見誤區:直接把 3000 埠開放到網際網路;或以為原版 Watchtower 仍可使用(已停止維護)。
- 不建議使用的情況:沒有人力處理更新與備份、卻要直接對公網開放服務;或需要移除 Open WebUI 品牌的商業產品。
- 測試日期與版本號:資料查核日期:2026-10-28;Open WebUI v0.12.4。
