Skip to content

8.2 Ollama Open WebUI SearXNG Local Web RAG Setup

av edited this page May 26, 2026 · 2 revisions

Ollama + Open WebUI + SearXNG Local Web RAG Setup

Harbor can run an Ollama Open WebUI Docker Compose setup as its default local chat stack, then add SearXNG when you want Open WebUI SearXNG web search for local web RAG workflows.

This guide focuses on the practical path: start Harbor's default Ollama and Open WebUI services, add SearXNG, then use Open WebUI's web search features without maintaining a separate Compose project by hand.

What This Stack Provides

The stack has three jobs:

  • Ollama serves local models.
  • Open WebUI provides the browser UI, chat history, document RAG, tools, functions, filters, and web RAG features.
  • SearXNG provides a self-hosted metasearch service that Harbor can connect to Open WebUI and other compatible services.

Harbor keeps those pieces in one Docker Compose-driven workflow. The service docs remain the source of truth for each individual service; this guide shows how they fit together for local web RAG.

Start Ollama and Open WebUI

Open WebUI is one of Harbor's default services, and the default Harbor stack includes Ollama as the local backend. Start the default stack with:

harbor up

Then open the default frontend:

harbor open

By default, Open WebUI is available at:

http://localhost:33801

At this point you have local model serving through Ollama and a browser-based UI through Open WebUI.

Add SearXNG for Local Web RAG

Start SearXNG alongside the Harbor stack:

WebUI with SearXNG Web RAG Example of Open WebUI using SearXNG for web search to answer a current-events query.

harbor up searxng

Harbor applies the compatible cross-service configuration when SearXNG and Open WebUI run together. In the Open WebUI service docs, this integration is described as web search for RAG and injects the SEARXNG_QUERY_URL setting into the WebUI container.

SearXNG is available directly at:

http://localhost:33811/

You normally do not need to hand-edit Open WebUI's generated config.json for the Harbor-provided SearXNG integration. Harbor renders and merges service configuration at container startup based on the selected services.

Why Use Harbor Instead of Manual Compose Wiring

A manual Ollama, Open WebUI, and SearXNG setup usually means writing or copying Compose files, joining the services on a Docker network, setting endpoint environment variables, choosing host ports, and keeping Open WebUI's search configuration aligned with the running SearXNG container.

With Harbor, the user-facing commands stay small:

harbor up
harbor up searxng

Harbor selects the relevant service Compose files and matching integration files for the services you asked to run. You can inspect the generated Compose command when needed:

harbor cmd searxng

See Harbor Compose Setup for details on how Harbor applies service and cross-service Compose files.

Configuration Notes

SearXNG's Harbor configuration includes:

HARBOR_SEARXNG_HOST_PORT      33811
HARBOR_SEARXNG_INTERNAL_URL   http://searxng:8080
HARBOR_SEARXNG_WORKSPACE      ./services/searxng

Use harbor config get and harbor config set to inspect or change Harbor configuration values:

harbor config get HARBOR_SEARXNG_INTERNAL_URL

Do not edit .env directly. Harbor profiles and harbor config keep the local environment aligned with the CLI.

Open WebUI stores its persistent data under the Harbor WebUI service workspace, including chats, uploads, vector database files, generated config, and related cache data. For permanent Open WebUI configuration overrides, use the override path documented in the Open WebUI service guide.

Useful Next Steps

After SearXNG is running with Open WebUI:

  • Use the Open WebUI interface to enable or use web search features for prompts that need current web context.
  • Check the SearXNG service guide for the host port, internal URL, workspace path, and external SearXNG option.
  • Check the Open WebUI service guide for persistence, config merging, and supported Harbor integrations.

If you are still choosing the overall stack shape, start with Local LLM Stack with Docker Compose, then return here when you want local AI web search attached to the default Harbor chat setup.

Return to Harbor Guides for the full guide index.

Clone this wiki locally