How to Choose and Set Up a Web Interface for Ollama

Ollama runs models locally and exposes them through a command-line tool and a local API, but it does not ship a full browser-based chat UI. A web interface adds chat history, model switching, prompt management, and often multi-user access on top of that API. The main decision is whether to self-host a platform like Open WebUI or use a lighter desktop/browser frontend, and the main setup task is pointing that interface at your Ollama server's API endpoint (by default http://localhost:11434). This guide covers what each option gives you, how to connect them, and how to fix the most common connection problems.

What a web interface actually adds to Ollama

Ollama itself is designed as a local model runner and API server. A web interface sits in front of it and provides:

  • Chat history — persistent conversations you can revisit, rename, and search, instead of terminal scrollback.
  • Model switching — a dropdown to move between pulled models without restarting anything.
  • Prompt and preset management — saved system prompts, reusable templates, and per-conversation settings.
  • Multi-user access — accounts, roles, and shared workspaces, which matters if more than one person uses the machine.
  • Document and file handling — many interfaces let you attach files or run retrieval over your own documents.

If you only ever run one model in a terminal and don't need history, you may not need a web interface at all. The value shows up as soon as you want persistence, multiple models, or more than one user.

The main options

Option Type Best for Trade-off
Open WebUI Self-hosted web platform Teams, multi-user, feature-rich chat Requires running a server (often Docker)
Lightweight browser frontends Local web app Single user who wants a simple chat page Fewer features, less active development
Desktop chat apps Native app Users who prefer no browser/server setup Less control over hosting and access

Open WebUI is the most commonly referenced self-hosted option in this space. Its own description frames it around running AI "on your own terms," connecting any model, extending with code, and keeping data under your control — which is the core pitch of self-hosting versus a hosted chat service.

Connecting an interface to your local Ollama server

The connection is almost always the same idea: the interface needs the URL of Ollama's HTTP API.

  1. Confirm Ollama is running and reachable. Ollama listens on port 11434 by default. Verify the API responds before touching any UI:

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

    A JSON list of your pulled models means the server is up. A connection error means the problem is Ollama, not the interface.

  2. Start the interface. If you're self-hosting Open WebUI, the common path is Docker. The key detail is that the container must be able to reach Ollama's host — localhost inside a container is the container itself, not your machine.

  3. Set the Ollama API endpoint in the interface's settings. Point it at the address where Ollama is actually reachable:

    • Same machine, interface not containerized: http://localhost:11434
    • Interface in Docker, Ollama on the host: use the host's address (for example http://host.docker.internal:11434 on Docker Desktop), not localhost.
    • Ollama on another machine: use that machine's IP or hostname.
  4. Verify. Open the model selector in the interface. Your pulled models should appear. Send a short test message and confirm a response comes back.

The single most common setup mistake is using localhost from inside a container. If the interface loads but shows no models, this is the first thing to check.

Self-hosting vs. desktop app: how to decide

Use the same dimensions to compare:

  • Privacy and control — Self-hosting keeps conversations and data on infrastructure you manage. Desktop apps also run locally, but you depend on the app's own data handling. If data residency matters, self-hosting gives you the most direct control.
  • Setup effort — A desktop app is usually install-and-go. Self-hosting typically means Docker, a port, and an API endpoint to configure. Choose self-hosting if you're comfortable with that; choose a desktop app if you want zero server management.
  • Multi-user and access — Self-hosted platforms like Open WebUI are built for multiple accounts and shared access. Desktop apps are generally single-user.
  • Features and extensibility — Self-hosted platforms tend to offer more: prompt libraries, document handling, and code-based extensions. Desktop apps trade features for simplicity.

If you're one person on one machine who wants a chat window, a desktop or lightweight browser frontend is the lower-effort choice. If you want shared access, history, and room to extend, self-host.

Common setup problems and fixes

Connection refused The interface can't reach Ollama. Confirm Ollama is running (curl http://localhost:11434/api/tags), then check that the endpoint in the interface matches where Ollama actually listens. If the interface runs in a container, replace localhost with the host address.

Models don't appear in the list Usually the same root cause as connection refused, but silent. The interface connected to something but got no model list. Re-check the endpoint, and confirm you've actually pulled models with ollama pull <model>.

CORS errors in the browser If a browser-based frontend calls Ollama directly, cross-origin restrictions can block it. The fix depends on the interface: many proxy requests through their own backend (avoiding CORS entirely), while direct browser calls may require configuring Ollama's allowed origins. Prefer an interface that proxies through its server if you hit this.

Works locally, fails from another device Ollama binds to localhost by default, so other machines can't reach it. To allow remote access you must configure Ollama to listen on a non-localhost address, and then use that address in the interface. Only do this on a trusted network, since it exposes your model server.

Interface loads but responses are slow or time out Large models on limited hardware can exceed request timeouts. Confirm the model runs acceptably from the command line first; if it's slow there, the interface isn't the problem.

A practical starting path

  1. Pull at least one model and confirm it works: ollama run <model>.
  2. Verify the API: curl http://localhost:11434/api/tags.
  3. Decide single-user (desktop/lightweight frontend) vs. multi-user (self-hosted platform like Open WebUI).
  4. Start the interface, set the Ollama endpoint to an address that's actually reachable from where the interface runs, and confirm your models appear.
  5. Send a test message, then fix connection issues using the section above.

The decision comes down to one question: do you need shared, persistent, extensible access, or just a chat window? Self-host for the former, use a desktop app for the latter — and in both cases, the setup succeeds or fails on getting the Ollama API endpoint right.

openwebui.com
Run AI on your own terms. Connect any model, extend with code, and protect what matters without compromise.