Open WebUI даёт локальной модели интерфейс в браузере: список чатов, выбор модели и настройки. В этой инструкции Open WebUI принимает запросы пользователя, а Ollama загружает модель и генерирует ответы. Оба сервиса запустим в Docker Compose. Интерфейс будет доступен на том же компьютере, а порт Ollama останется внутри сети контейнеров.
Как связаны Open WebUI и Ollama
Браузер обращается к Open WebUI на порту 3000. Сервер Open WebUI отправляет запрос в Ollama по адресу http://ollama:11434. Имя ollama совпадает с именем сервиса в Compose. Docker разрешает его внутри общей сети, поэтому веб-интерфейсу не нужен адрес компьютера в локальной сети.
В этой схеме память для модели выделяет Ollama. Выбор другого оформления чата или увеличение объёма диска контейнера Open WebUI не уменьшат требования модели к оперативной памяти. Если модели уже работают в Ollama, отдельный контейнер из примера создаст своё хранилище. О варианте с существующей установкой расскажем ниже.
Если вы сначала выбираете способ запуска модели, сравните сценарии в наших материалах. Локальные модели в Ollama · LM Studio.
Установка через Docker Compose
Нужны работающие Docker и Compose, место для образов и весов, а также доступ к реестрам на этапе установки. Проверьте docker version и docker compose version. На Windows и macOS можно использовать Docker Desktop. Под Linux подойдёт Docker Engine с плагином Compose.
Сохраните следующий файл как compose.yaml в отдельном каталоге. Для Open WebUI указан тег релиза 0.13.0. Образ Ollama в примере использует стандартный тег latest. Для воспроизводимой установки закрепите версию обоих образов. Базовый вариант рассчитан на запуск без проброса GPU.
services:
ollama:
image: ollama/ollama:latest
volumes:
- ollama-data:/root/.ollama
restart: unless-stopped
webui:
image: ghcr.io/open-webui/open-webui:v0.13.0
depends_on:
- ollama
ports:
- "127.0.0.1:3000:8080"
environment:
OLLAMA_BASE_URL: http://ollama:11434
WEBUI_SECRET_KEY: ${WEBUI_SECRET_KEY:?set WEBUI_SECRET_KEY in .env}
volumes:
- webui-data:/app/backend/data
restart: unless-stopped
volumes:
ollama-data:
webui-data:
Создайте рядом файл .env со строкой WEBUI_SECRET_KEY= и случайным секретом после знака равенства. Например, значение можно получить командой openssl rand -hex 32, если установлен OpenSSL. Сохраните секрет для следующих запусков и исключите файл из Git. Фиксированный ключ позволяет сохранять непрерывность сессий при пересоздании контейнера.
Ограничение 127.0.0.1 в секции ports привязывает интерфейс к локальному адресу. Если порт 3000 занят, поменяйте его на 3001 слева от 8080 и открывайте новый адрес в браузере. У сервиса Ollama нет секции ports, поэтому Compose не публикует его API на компьютере.
docker compose config --quiet
docker compose up -d
docker compose ps
docker compose exec ollama ollama pull qwen2.5:1.5b
docker compose exec ollama ollama list
Первая команда проверяет конфигурацию. Следующие запускают сервисы и загружают небольшую модель для проверки связи. Если загрузка прервалась, сначала устраните проблему с сетью или свободным местом и повторите ollama pull. Пустой список моделей сразу после установки Ollama ожидаем. Команды сверены с документацией проектов. Open WebUI Quick Start · Ollama в Docker.
Первый вход и проверка ответа
Откройте http://127.0.0.1:3000 и создайте первую учётную запись. В новой установке она получает роль администратора. Выберите модель в списке и отправьте короткий запрос, например «Назови два способа проверить доступность локального HTTP-сервера». Такой запрос позволяет увидеть, что ответ действительно начал генерироваться, и оценить время до первой строки.
Откройте новый чат и вернитесь в первый через боковой список. Так можно проверить, что история сохраняется. Для проверки после перезапуска выполните docker compose restart webui, снова откройте страницу и найдите диалог. При обычной работе двух томов история и модели переживают перезапуск сервиса.
Если провайдер не появился автоматически, проверьте подключение Ollama в настройках администратора. Адрес в примере — http://ollama:11434, без суффикса /v1 для подключения типа Ollama. Для существующего экземпляра Open WebUI проверьте и сохранённый адрес в настройках: значение, записанное в интерфейсе, может иметь приоритет над переменной окружения. Подключение провайдера.
Как использовать Ollama, которая уже установлена
При наличии работающего Ollama можно оставить единственный сервис Open WebUI и указать ему адрес существующего API. В Docker Desktop контейнер обычно обращается к хосту по имени host.docker.internal. На Linux для такого имени добавляют extra_hosts со значением host.docker.internal:host-gateway. При этом Ollama должна слушать интерфейс, доступный из контейнера. Адрес 127.0.0.1 внутри контейнера указывает на сам контейнер.
Перед изменением адреса прослушивания проверьте границы доступа. Если для связи с контейнером приходится расширять привязку Ollama, ограничьте входящие подключения сетевым экраном. Два сервиса в одной сети Compose дают более простой исходный вариант. Для сервера моделей на другом компьютере используйте его доступный из контейнера адрес и ограничьте доступ на стороне сервера. Настройки сети Ollama.
Если список моделей пуст или ответ зависает
| Симптом | Проверка |
|---|---|
| Страница не открывается | Посмотрите docker compose ps и docker compose logs webui. Сверьте адрес, занятость порта и завершение запуска. |
| Страница открывается, список моделей пуст | Выполните docker compose exec ollama ollama list. Проверьте имя сервиса, порт и сохранённое подключение в Open WebUI. |
| Модель загружена, ответ медленный | Попробуйте короткий запрос и небольшую модель. Посмотрите docker compose logs ollama и docker stats --no-stream. |
| После запуска видна новая пустая история | Проверьте, что Compose работает с тем же проектом и томом. Имя каталога может влиять на имя проекта и томов. |
Если требуется проверить Ollama отдельно, выполните docker compose exec ollama ollama run qwen2.5:1.5b. Если генерация работает в терминале, но не в браузере, следующий шаг — проверка адреса провайдера и логов Open WebUI. Если медленно в обоих местах, начните с ресурсов, выделенных Ollama. Настройка GPU зависит от ОС и способа запуска. Варианты запуска Ollama с GPU.
Где лежат история и модели
Том webui-data содержит данные Open WebUI, включая историю, пользователей и настройки стандартной установки. Том ollama-data хранит модели и данные Ollama. Перед обновлением сохраните данные Open WebUI и конфигурацию с секретом отдельно. Для согласованной копии SQLite остановите запись на время резервирования. Держите резервную копию вне тома, который она защищает.
Команда docker compose down останавливает проект и удаляет контейнеры, сохраняя именованные тома по умолчанию. Флаг -v удаляет тома проекта вместе с содержимым. При смене каталога или имени проекта сначала выясните, какие тома использует текущий экземпляр. Документация Docker Compose.
Для доступа с другого устройства потребуется отдельная настройка сети. Используйте аутентификацию, контролируемый доступ и HTTPS при размещении за прокси. Сначала проверьте локальный сценарий с одним пользователем и одной моделью. После этого проще отдельно оценить нагрузку, подключение и доступ к данным.
Частые вопросы
Он предоставляет интерфейс чата, хранит историю и отправляет запросы выбранному провайдеру. В примере генерацию выполняет Ollama.
Да. Укажите адрес API, доступный из контейнера Open WebUI. Для Docker Desktop обычно используется host.docker.internal, а на Linux может понадобиться настройка host-gateway и адреса прослушивания Ollama.
Проверьте ollama list, адрес провайдера и логи. При двух сервисах в сети Compose адрес Ollama в примере — http://ollama:11434.
В стандартной конфигурации Open WebUI сохраняет данные в каталоге /app/backend/data. В примере он подключён к именованному тому webui-data.
Источники
- 1.Open WebUI — быстрый стартhttps://docs.openwebui.com/getting-started/quick-start/
- 2.Open WebUI — подключение провайдераhttps://docs.openwebui.com/getting-started/quick-start/connect-a-provider/
- 3.Ollama — Dockerhttps://docs.ollama.com/docker
- 4.Ollama — сетевые настройкиhttps://docs.ollama.com/faq
- 5.Ollama — Qwen2.5 1.5Bhttps://ollama.com/library/qwen2.5:1.5b
- 6.Docker — сеть Composehttps://docs.docker.com/compose/how-tos/networking/
- 7.Docker — Compose downhttps://docs.docker.com/reference/cli/docker/compose/down/
- 8.Open WebUI — релиз 0.13.0https://github.com/open-webui/open-webui/releases/tag/v0.13.0



