ローカルLLMをブラウザで使う — Open WebUIとOllamaをつなぐ公式手順(Docker/pip)と、つながらない時のポート整理
Open WebUIを入れると、Ollamaで動かすローカルLLMをChatGPT風の画面で使える。Docker・pipの公式コマンド、Ollamaとの接続先URL、3000/8080/11434の関係、更新とバックアップの手順を公式ドキュメントだけで整理する。

Open WebUIは「Ollamaの前に置く受付窓口」で、Docker一行で立つ。詰まるのは手順ではなく、3000・8080・11434という3つの番号の関係だ。
Ollamaの導入記事で、ターミナルからローカルLLMを走らせるところまでは書いた。ただ、毎回PowerShellで対話するのは正直しんどい。会話の履歴も残らない。
そこで名前が挙がるのがOpen WebUIだ。ブラウザで開くチャット画面を、自分のPCの中に立てるソフトである。
この記事は「使ってみた」記事ではない。Open WebUIの公式ドキュメント・GitHub README、Ollama公式FAQ、Docker公式ドキュメントの記載だけを、WindowsのゲーミングPC向けに並べ直した。コマンドは公式に載っているものしか書かない。
まず役割分担。Open WebUIは窓口、Ollamaが本体
Open WebUIを入れても、LLMが速くなるわけではない。推論をするのは相変わらずOllamaで、Open WebUIはその前に座る画面だ。
- Ollama: モデルを読み込み、
127.0.0.1:11434で要求を待つ常駐サーバー。公式FAQに「既定で127.0.0.1のポート11434にバインドする」とある(出典: Ollama FAQ) - Open WebUI: ブラウザに画面を出し、裏でOllamaへ要求を投げる。会話・ユーザー・設定を自分側に保存する
現場でいえば、Ollamaが重機のオペレーター、Open WebUIが現場事務所の受付だ。受付が立派でも、掘る速さは重機(=GPUとVRAM)で決まる。だからVRAMの見方はVRAM別の早見表がそのまま効く。
Ollama以外にも、Open WebUIの公式Quick Startでは「Settings > Admin > Connections」からOllama・OpenAI・OpenAI互換APIをつなげると書かれている(出典: Open WebUI Quick Start)。この記事ではOllamaとの組み合わせに絞る。
入れ方は2ルート。Dockerかpipか
ルート1: Docker(公式の推奨)。 Quick Startで「Recommended」とされているのがこちらだ。Ollamaを同じPCで動かしている場合、READMEの既定コマンドはこうなる(出典: Open WebUI README)。
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
起動したらブラウザで http://localhost:3000 を開く(出典: Open WebUI README)。Quick Startの版では、ここに -e WEBUI_SECRET_KEY=your-secret-key が足されている(出典: Open WebUI Quick Start)。これの意味は後の更新の節で書く。
ルート2: pip。 Pythonで直接入れる方法だ。公式の手順はこの2行だけである(出典: Open WebUI Quick Start)。
pip install open-webui
open-webui serve
こちらは http://localhost:8080 で開く。注意点はPythonのバージョンで、Quick Startには「Python 3.11と3.12に対応、3.13はまだ非対応」とあり、本番運用には3.11を推奨している(出典: Open WebUI Quick Start)。
俺の整理はこうだ。Dockerを入れてあるならDocker、Dockerを入れたくないならpip(Python 3.11)。どちらでも、Ollama側は先に動いている前提だ。
| ルート | 公式コマンド | 開くURL | 前提 |
|---|---|---|---|
| Docker(推奨) | docker run -d -p 3000:8080 … |
localhost:3000 | Docker環境 |
Docker(--network=host) |
docker run -d --network=host … |
localhost:8080 | 同上 |
| pip | pip install open-webui → open-webui serve |
localhost:8080 | Python 3.11 / 3.12 |
出典: Open WebUI README / Quick Start / Troubleshooting
GPU入りのイメージとOllama同梱版
READMEには用途別のイメージが並んでいる(出典: Open WebUI README)。
:main… 標準。Ollamaは別に動かす:cuda… NVIDIA GPU向け。--gpus allを付けて起動する:ollama… Open WebUIとOllamaを1つのコンテナに同梱。GPU版は--gpus=allと-v ollama:/root/.ollamaを付ける
同梱版のGPUコマンドは次の通りだ(出典: Open WebUI README)。
docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
WindowsのDocker DesktopでGPUを使うには条件がある。Docker公式は「Docker DesktopのGPU対応はWSL2バックエンドのWindowsでのみ使える」としたうえで、NVIDIA GPU、最新のWindows 10/11、WSL2のGPU仮想化に対応したNVIDIAドライバ、最新のWSL2カーネルを要件に挙げる(出典: Docker Docs GPU support)。確認用のコマンドも公式にある。
docker run --rm -it --gpus=all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
すでにWindowsネイティブ版のOllamaを入れているなら、GPUを握るのはOllama側だ。その場合は :main で画面だけ立てる形になる。土台のWSL2まわりはWSL2+CUDAの構築記事に分けてある。
つながらない原因はほぼ「番号」。仕組みの図解
Open WebUIで一番多い詰まりは「画面は開くがモデルが出ない」だ。公式Troubleshootingは、原因として「DockerコンテナがOllamaサーバーの127.0.0.1:11434に届かない」ことを挙げている(出典: Open WebUI Troubleshooting / README)。
ポイントは、コンテナの中から見た127.0.0.1は、ホストではなくコンテナ自身だということだ。ホストで動くOllamaに届けるには、既定コマンドの --add-host=host.docker.internal:host-gateway が効いている必要がある。
公式の「Starting with Ollama」では、Dockerで動かすときの接続先は http://host.docker.internal:11434 とされ、同じマシンで直接動かす場合は既定の接続が自動で試される(出典: Open WebUI Starting with Ollama)。環境変数 OLLAMA_BASE_URL の既定値は http://localhost:11434 だ(出典: Open WebUI Environment Variables)。
公式が示す対処は2つある。
1. --network=host で起動する。 コンテナをホストのネットワークに直接つなぐ方法で、公式Troubleshootingのコマンドはこうだ(出典: Open WebUI Troubleshooting)。
docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main
この場合は -p の読み替えがなくなるので、開くURLは http://localhost:8080 に変わる(出典: Open WebUI README)。3000番を開いて「つながらない」と言っていたら、ここを疑う。
2. Ollamaの待ち受けを広げる。 公式Troubleshootingは「OLLAMA_HOST=0.0.0.0 で全ネットワークインターフェースで待ち受ける」と書き、設定後にOllamaの再起動が要るとしている(出典: Open WebUI Troubleshooting)。Windowsでの環境変数の設定は、Ollama公式FAQの「アカウントの環境変数を編集」から作成し、スタートメニューからOllamaを起動し直す手順だ(出典: Ollama FAQ)。
ただし0.0.0.0は、同じネットワーク上の他の機器からも11434番に届くようになる設定だ。KY活動でいえば、資材置き場の門を開けっぱなしにする判断にあたる。自宅LANの中でも、必要なときだけにしておくのが筋だと俺は考える。
別のPCで動くOllamaにつなぐなら、READMEの -e OLLAMA_BASE_URL=https://example.com 付きのコマンドを使う(出典: Open WebUI README)。
最初の起動でやること
1. 管理者アカウントを作る。 Quick Startには「最初の起動で管理者アカウントを作成する」とある。管理者はインスタンス全体の設定を持つ(出典: Open WebUI Quick Start)。新しく登録したユーザーの既定ロールは DEFAULT_USER_ROLE の既定値 pending(承認待ち)だ(出典: Open WebUI Environment Variables)。
2. 接続を確認する。 「Settings > Admin > Connections」でOllamaの接続先を見る。Dockerなら http://host.docker.internal:11434 だ(出典: Open WebUI Starting with Ollama)。
3. モデルを落とす。 公式の方法は2つ。管理画面の「Manage Ollama API Connections」にあるOllamaの横の「Manage」ボタンから落とすか、モデル選択欄にモデル名を打つと「Ollamaからダウンロードするか」を聞いてくる(出典: Open WebUI Starting with Ollama)。CLIの ollama pull と同じことを画面から頼んでいる形だ。
モデルの常駐時間はOllama側の設定で、公式FAQには「既定でモデルは5分間メモリに保持されてからアンロードされる」とあり、OLLAMA_KEEP_ALIVE で変えられる(出典: Ollama FAQ)。ゲームを起動する前にVRAMを空けたいときは、この5分を覚えておくと段取りが狂わない。
更新とバックアップ。データはコンテナの外にある
Open WebUIの更新は、公式の「Updating」ページの手順で行う。Docker runで入れた場合はこうだ(出典: Open WebUI Updating)。
docker rm -f open-webui
docker pull ghcr.io/open-webui/open-webui:main
このあと、最初と同じ docker run をもう一度打つ。コンテナを消しても会話が消えないのは、公式に「データ(チャット・ユーザー・設定・アップロード)はコンテナの中ではなく、Dockerボリュームかローカルのデータベースにある」と書かれている通りだ(出典: Open WebUI Updating)。図の下段の open-webui ボリュームがそれだ。pipで入れた場合は pip install -U open-webui で上げる。
同じページで強調されているのが2点ある。
- WEBUI_SECRET_KEYを固定する。 固定しないと「コンテナを作り直すたびに新しい鍵が生成され、すべてのセッションが無効になる」。鍵は
openssl rand -hex 32で作る例が載っている(出典: Open WebUI Updating) - 更新前にバックアップを取る。 特にデータベース移行を含むリリースは「元に戻しにくい」とされ、ボリュームをtar.gzに固めるコマンドが示されている(出典: Open WebUI Updating)
段取り八分というやつで、更新そのものより、更新前の2点で結果が決まる。
次の一歩
Open WebUIは画面を良くするソフトで、速さはOllamaの下にあるGPUとVRAMで決まる。受付を立てる前に、ollama ps で「100% GPU」が出るモデルを選べているかを確かめたい。
- 8GB VRAMなら8B級の4bitモデルから
- 12〜16GBなら14B級まで視野に入る
- それ以上は、GPU選びの段階で決める
今週のセール機をVRAM基準で仕分けた表と二刀流ランキングは、その「GB」で選べるように組んである。最強の1台より、VRAMと接続先の2点を外さない1台だ。
※本記事はOpen WebUI・Ollama・Dockerの公式ドキュメントとGitHub READMEの公開情報に基づく手順解説です。コマンドや既定値はバージョンにより変わるため、最新の手順は各公式ドキュメントをご確認ください。
出典
- Open WebUI Quick Start(Docker推奨コマンド、WEBUI_SECRET_KEY、pip手順、Python 3.11/3.12、:cuda、:ollama、管理者アカウント、Settings > Admin > Connections): https://docs.openwebui.com/getting-started/quick-start/
- Open WebUI GitHub README(Docker runの各コマンド、localhost:3000、OLLAMA_BASE_URL、–network=host時の8080番): https://github.com/open-webui/open-webui/blob/main/README.md
- Open WebUI Troubleshooting「Connection Error」(OLLAMA_HOST=0.0.0.0、–network=hostのコマンド): https://docs.openwebui.com/troubleshooting/connection-error/
- Open WebUI「Starting with Ollama」(host.docker.internal:11434、Manageボタン、モデル選択欄からのダウンロード): https://docs.openwebui.com/getting-started/quick-start/connect-a-provider/starting-with-ollama
- Open WebUI Environment Variables(OLLAMA_BASE_URL既定値、DEFAULT_USER_ROLE、PORT): https://docs.openwebui.com/reference/env-configuration/
- Open WebUI Updating(更新手順、データの保存場所、WEBUI_SECRET_KEY、バックアップ): https://docs.openwebui.com/getting-started/updating/
- Ollama FAQ(既定の127.0.0.1:11434、OLLAMA_HOST、Windowsの環境変数手順、KEEP_ALIVE既定5分): https://docs.ollama.com/faq
- Docker Docs「GPU support in Docker Desktop for Windows」(WSL2バックエンド限定、要件、確認コマンド): https://docs.docker.com/desktop/features/gpu/