Contents
Open WebUI Tutorial: Add a ChatGPT-Like Web Interface to Ollama
Terminal conversations are convenient, but sharing them with family or coworkers calls for a web interface. Open WebUI is one of the most popular open-source options. Its interface looks a lot like ChatGPT, and it has plenty of features:
- Conversation history, switching between models, and Markdown and code display
- Upload documents so the model can answer based on them (built-in RAG)
- Multiple user accounts and permission management
- Custom models (system prompts and parameters)
- Supports Ollama and OpenAI-compatible APIs
Install with Docker (recommended)
If Ollama is already installed on your host:
docker run -d --name open-webui \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--restart always \
ghcr.io/open-webui/open-webui:main
Open http://localhost:3000. The account you create on the first visit becomes the administrator.
--add-host=host.docker.internal:host-gateway: Lets the container connect to Ollama on the host (required on Linux; Docker Desktop supports this name automatically).-v open-webui:/app/backend/data: Saves accounts, conversation history, and settings.
To run both Ollama and Open WebUI with Docker, use the Compose example in Run Ollama with Docker.
Install with pip
If you don't want to use Docker (requires Python 3.11):
pip install open-webui
open-webui serve
The default URL is http://localhost:8080.
Can't connect to Ollama?
Go to Admin Settings → Connections and check the Ollama API URL:
| Situation | URL |
|---|---|
| Open WebUI is in Docker, Ollama is on the host | http://host.docker.internal:11434 |
| Both are in the same Compose setup | http://ollama:11434 |
| Both are installed directly on the host | http://localhost:11434 |
| Ollama is on another computer | http://that-computer's-IP:11434 (set OLLAMA_HOST=0.0.0.0 on that computer) |
On Linux, Ollama on the host listens only on 127.0.0.1 by default, so the container may not be able to connect. Set OLLAMA_HOST to 0.0.0.0 (and restrict external connections with a firewall), or run Open WebUI with --network host. In that case, use http://localhost:8080 as the URL.
Basic usage
- Select a model in the upper-left corner. Downloaded Ollama models appear automatically.
- Administrators can also enter a name directly in the model menu to download a new model (for example,
qwen3:8b). - Conversation history is saved in the left sidebar.
Ask questions about uploaded documents
Select + in the chat box to upload a PDF, Word document, or text file, then ask questions about its contents. Open WebUI automatically splits the text into chunks, generates embeddings, and retrieves relevant passages.
To use the same set of documents over time, create a knowledge base under Workspace → Knowledge and reference it with # during a conversation.
For better retrieval from Chinese documents, go to Admin Settings → Documents and switch the embedding model to a multilingual model (for example, use bge-m3 through Ollama). For an explanation of how this works, see Text embeddings and RAG.
Customize models
Under Workspace → Models → Create, you can configure any model with:
- A system prompt (for example, “Always respond in Traditional Chinese”)
- Parameters (temperature, context length)
- A knowledge base to attach by default
Your custom model appears in every user's model menu, for example, “Customer Support Assistant” or “Code Review.”
Multiple users
- Admin Settings → Users: New users are set to “Pending” by default after they register. They can use the service once an administrator approves them.
- You can configure user groups and which models each group can use.
- To let others on your local network use it, have them connect to
http://your-computer-IP:3000.
Before making it available on the internet, put an HTTPS reverse proxy in front of it and disable public registration.
Update
docker pull ghcr.io/open-webui/open-webui:main
docker rm -f open-webui
# Recreate the container with your original docker run command; data in the Volume will be preserved
FAQs
The model list is empty
Open WebUI can't connect to Ollama. Check the URL as described above under “Can't connect to Ollama?” You can test it from inside the container:
docker exec open-webui curl -s http://host.docker.internal:11434/api/tags
Responses are slow
Open WebUI is only the interface. Speed depends on Ollama and your hardware. See GPU and performance tuning.
Forgot the administrator password
The administrator password is stored in the database in the Volume. The easiest method is to have another administrator reset it. If you have only one administrator, see the password reset instructions in the official Open WebUI documentation.
Updated October 12, 2026