← Back to Troubleshooting
Troubleshooting

Ollama Is Running, But Open WebUI Can't Connect

The interface loads but shows no models, or errors trying to reach Ollama - even though ollama ps looks completely normal.

6 minute read
Last tested: August 2026 · Ollama 0.33.2 · Open WebUI 0.11.1 · Docker 29.7.2

First, confirm Ollama is actually the one working

Before touching Open WebUI at all, check Ollama directly, outside of Docker:

ollama ps

If this hangs, errors, or shows nothing when a model should be loaded, the problem is Ollama itself, not the connection between the two - see Ollama Service Won't Start instead.

If Ollama is fine, restart the container

Open WebUI checks for Ollama when its container starts. If Ollama wasn't running yet at that moment - a common sequence if you rebooted the machine and the timing was off - it may not reconnect automatically even once Ollama comes up:

docker restart open-webui

Check the connection Open WebUI is actually using

In Open WebUI, go to Admin Settings → Connections, and confirm the Ollama API URL is set. The setup guide's install command includes --add-host=host.docker.internal:host-gateway specifically so Open WebUI can reach Ollama running on the host machine at http://host.docker.internal:11434 - if that flag was dropped or edited out of the original command, this is exactly the failure it causes.

If you modified the original docker run command - a different port, a simplified version copied from somewhere else, or dropped flags you didn't think you needed - that's the first thing to compare back against the original. This single flag is the specific thing that makes "Ollama on the host, Open WebUI in Docker" work at all.

Still nothing? Check for a stale or duplicate container

If you've run the install command more than once - troubleshooting an earlier issue, following a slightly different guide, copy-pasting into two terminals - you may have more than one container competing for the same port:

docker ps -a

Look for more than one entry with open-webui in the name or a status that isn't "Up." Remove any stale ones (this only removes the container, not your data, which lives in a separate Docker volume) and re-run the original install command fresh.

Written from hands-on security operations experience. More about this site →