Оригинал: https://timofei-ermolaev.ru/courses/open-webui/configure/ollama/

# Подключаем локальную модель через Ollama

Подключим Ollama к Open WebUI в Windows, macOS и Ubuntu Linux: загрузим проверочную модель, укажем адрес сервера и разберём ошибки соединения.

[![Тимофей Ермолаев](https://timofei-ermolaev.ru/_astro/timofei-ermolaev-portrait.s0mCFw-J_Z1x8STQ.webp)](<https://timofei-ermolaev.ru/ob-avtore/>)

[Тимофей Ермолаев](<https://timofei-ermolaev.ru/ob-avtore/>) Директор по информационным технологиям (CIO)

**Опубликовано**

16 октября 2026 г.

**Обновлено**

16 октября 2026 г.

**На урок**

14 мин

**Тема**

[Настройка](<https://timofei-ermolaev.ru/courses/open-webui/configure/>)

## После урока вы сможете

- Выбрать ветку Ollama для своей операционной системы
- Загрузить модель и проверить её ответ в терминале
- Подключить сервер к Open WebUI и найти причину ошибки соединения

**Проверяемый результат:** Выбранная локальная модель загружена в Ollama и возвращает законченный ответ в чате Open WebUI.

Если после запуска Open WebUI и создания учётной записи администратора список моделей пуст, отправленное сообщение пока останется без ответа. Для нашего чата Open WebUI работает как веб-оболочка: чтобы вычислить ответ, ему нужен отдельный сервер, который запустит языковую модель.

В этом уроке мы установим локальный сервер моделей [Ollama](<https://docs.ollama.com/cli>) , скачаем небольшую проверочную модель `qwen2.5:0.5b` и свяжем её с нашим контейнером Open WebUI. Когда вся цепочка заработает, запрос пройдёт такой маршрут: браузер отправляет сообщение в контейнер Open WebUI, тот передаёт его серверу Ollama, а Ollama запускает модель `qwen2.5:0.5b` и возвращает ответ обратно в интерфейс.

Сначала проверим ответ модели прямо в терминале через саму Ollama, а затем повторим тот же вопрос в окне чата Open WebUI, чтобы убедиться в исправности каждого звена.

## Выберем ветку для своей системы

Нужны уже работающий Open WebUI в Docker и учётная запись администратора из урока про [первый вход и базовые настройки](<https://timofei-ermolaev.ru/courses/open-webui/configure/first-admin/>) . В Windows подойдёт выбранная раньше [установка через `docker run`](<https://timofei-ermolaev.ru/courses/open-webui/install/docker/>) или [Docker Compose](<https://timofei-ermolaev.ru/courses/open-webui/install/docker-compose/>) : переделывать работающий контейнер не потребуется. В macOS и Ubuntu Linux продолжаем установку через Compose из соответствующей ветки курса. Здесь разбираем подключение к Docker-установке Open WebUI; самостоятельное приложение Open WebUI Desktop использует другой способ запуска. Интернет понадобится для загрузки Ollama и файлов модели.

Способ установки Ollama, адрес подключения и даже окно терминала зависят от операционной системы. Выберите свою систему в таблице ниже. Проходить нужно только свою ветку, а затем перейдите к общему шагу настройки адреса в веб-интерфейсе.

| Система | Где работает Ollama | В каком окне выполняем команды для Ollama | В каком окне управляем Docker |
| --- | --- | --- | --- |
| Windows | Обычное приложение Windows в фоновом режиме | В окне PowerShell | В терминале Ubuntu (WSL2), через выбранный ранее `docker run` или Compose |
| macOS | Обычное приложение macOS | В программе «Терминал» macOS | В программе «Терминал» macOS |
| Ubuntu Linux 24.04 | Отдельный сервис в существующем проекте Docker Compose (на процессоре, CPU) | В обычном терминале Ubuntu из папки `~/projects/open-webui` | В обычном терминале Ubuntu из папки `~/projects/open-webui` |

В Windows команды управления контейнером Open WebUI мы вводили в Ubuntu WSL2, а [приложение Ollama для Windows](<https://docs.ollama.com/windows>) устанавливается в саму Windows. Поэтому команды `ollama` и диагностику её локального сервера мы будем выполнять в обычном окне PowerShell, а не внутри терминала Ubuntu. Устанавливать вторую копию Ollama внутрь WSL2 не нужно.

На компьютерах Mac мы используем [нативное приложение Ollama для macOS](<https://docs.ollama.com/macos>) . Согласно [ответам на частые вопросы по Ollama](<https://docs.ollama.com/faq>) , запуск Ollama внутри контейнера под Docker Desktop на macOS не позволяет задействовать аппаратное ускорение графического процессора Apple Silicon, тогда как обычное приложение macOS умеет работать с чипами серии M (на процессорах Intel расчёты пойдут на CPU).

В Ubuntu Linux мы пойдём другим путём: добавим [официальный Docker-образ Ollama](<https://docs.ollama.com/docker>) вторым сервисом прямо в наш существующий файл `compose.yaml`. Это базовая конфигурация для работы на центральном процессоре (CPU). Настраивать драйверы видеокарты и менять сетевые службы хоста для неё не требуется.

**Для пользователей Ubuntu Linux сохраняется правило про `sudo`.** Если в прошлых уроках вы вводили команды Docker с префиксом `sudo`, здесь также добавляйте `sudo` перед каждой командой, начинающейся с `docker` (например, `sudo docker compose ps`).

## Запустим Ollama и загрузим модель

Прежде чем настраивать веб-интерфейс, добьёмся ответа от самой модели через командную строку. Так мы заранее проверим, что сервер Ollama запущен, а модель полностью скачалась и способна генерировать текст. Переходите сразу к подразделу для вашей операционной системы.

### Windows и macOS: установим приложение Ollama

Скачаем и установим официальное приложение для своей системы:

- Для Windows загрузим установщик со [страницы Ollama для Windows](<https://docs.ollama.com/windows>) и запустим его. После установки программа работает в фоновом режиме (значок появляется в области уведомлений на панели задач).
- Для Mac загрузим архив или образ со [страницы Ollama для macOS](<https://docs.ollama.com/macos>) , перенесём приложение в папку «Программы» (`Applications`) и запустим его.

После установки и первого запуска приложения **закроем и заново откроем** окно PowerShell (в Windows) или «Терминал» (в macOS). Это нужно, чтобы командная оболочка подхватила обновлённый путь к исполняемому файлу `ollama`.

Проверим, что утилита командной строки доступна и откликается:

```
ollama  --version  
```

Если в ответ появилась строка с номером версии, загрузим небольшую модель [`qwen2.5:0.5b`](<https://ollama.com/library/qwen2.5:0.5b>) из официального каталога с помощью команды [`ollama pull`](<https://docs.ollama.com/cli>) :

```
ollama  pull  qwen2.5:0.5b  
```

Тег `qwen2.5:0.5b` выбрали для проверки связи: файл модели в реестре занимает около 398 МБ, а семейство Qwen 2.5 поддерживает русский язык. Указанный объём в 398 МБ отражает только размер скачиваемого артефакта на диске, а не минимальные требования к оперативной памяти или видеопамяти. Эта небольшая модель нужна для упражнения. Высокую скорость и качество ответов мы здесь не обещаем и не рекомендуем её для рабочих задач.

Когда загрузка завершится, проверим список локальных моделей командой [`ollama list`](<https://docs.ollama.com/cli>) :

```
ollama  list  
```

В выводе должна присутствовать строка с точным именем `qwen2.5:0.5b`. Запомним это написание: именно такой тег мы будем указывать на всех следующих шагах.

Теперь отправим модели короткий проверочный запрос прямо из терминала через команду [`ollama run`](<https://docs.ollama.com/cli>) :

```
ollama  run  qwen2.5:0.5b  "Ответь одним коротким предложением: для чего нужен список дел?"  
```

Дождёмся появления ответа в терминале. Точная формулировка не важна: главное, чтобы модель вернула законченное осмысленное предложение на русском языке и управление вернулось в командную строку. Как только ответ получен, можно переходить к следующему разделу «Укажем адрес Ollama в Open WebUI».

### Ubuntu Linux: добавим Ollama в существующий Compose

В Ubuntu Linux мы не устанавливаем Ollama прямо в систему, а добавляем её в существующий проект Docker Compose. Перейдём в папку нашего проекта:

```
cd  ~/projects/open-webui  
```

Откроем файл `compose.yaml` в текстовом редакторе. Добавим описание второго сервиса `ollama` в существующий блок `services:` и новый том `ollama:` в нижний блок `volumes:`.

Все прежние настройки сервиса `open-webui`, имя проекта, порты и привязку к файлу секретного ключа `./open-webui.env` мы оставляем без изменений. Если ранее вы меняли порт интерфейса (например, на `3001`) или фиксировали конкретную версию образа `open-webui`, сохраните свои значения. Сам файл `open-webui.env` трогать или генерировать заново не нужно.

Полный файл `compose.yaml` после добавления сервиса будет выглядеть так:

```
name :  open-webui  
 
services :  
  open-webui :  
    image :  ghcr.io/open-webui/open-webui:main  
    ports :  
      -  "127.0.0.1:3000:8080"  
    volumes :  
      -  open-webui:/app/backend/data  
    extra_hosts :  
      -  host.docker.internal:host-gateway  
    env_file :  
      -  ./open-webui.env  
    restart :  unless-stopped  
 
  ollama :  
    image :  ollama/ollama  
    volumes :  
      -  ollama:/root/.ollama  
    restart :  unless-stopped  
 
volumes :  
  open-webui :  
  ollama :  
```

Разберём настройки сервиса `ollama`:

- **`image: ollama/ollama`** указывает официальный образ из [документации Ollama по Docker](<https://docs.ollama.com/docker>) . Без указания конкретного тега Docker загрузит текущий образ по умолчанию (`latest`), который разработчики со временем обновляют. Конфигурация без дополнительных блоков устройств запускает модели на центральном процессоре (CPU).
- **`volumes: - ollama:/root/.ollama`** вместе с нижней строчкой `ollama:` в секции `volumes` создаёт отдельный именованный том для хранения скачанных языковых моделей. Том сохраняет модели при перезапуске или обновлении контейнера, поэтому качать их заново не придётся.
- **Отсутствие секции `ports:`** у сервиса `ollama` сделано намеренно. Как объясняется в [руководстве по сетям Docker Compose](<https://docs.docker.com/compose/how-tos/networking/>) , сервисы одного файла `compose.yaml` по умолчанию попадают в общую сеть проекта и могут обращаться друг к другу напрямую по имени сервиса. Публиковать порт `11434` на хост-машину не требуется. Без секции `ports` порт не пробрасывается на интерфейсы хоста. Это не изолирует контейнер от самого Docker-хоста и соседних контейнеров в той же сети проекта.

Проверим, что после редактирования структура YAML-файла не нарушена и в нём не появилось дублирующихся секций `services` или `volumes`:

```
docker  compose  config  --quiet  
```

Если команда завершилась без сообщений об ошибках, запустим новый сервис `ollama` в фоновом режиме (напоминаем про префикс `sudo`, если вы используете его для работы с Docker):

```
docker  compose  up  -d  ollama  
```

Имя сервиса `ollama` в конце команды указывает, какой контейнер запустить. Работающий `open-webui` эта команда не обновляет. При первом запуске загрузка образа `ollama/ollama` займёт некоторое время.

Проверим состояние контейнеров проекта:

```
docker  compose  ps  
```

В списке должны отображаться оба сервиса: `open-webui` и `ollama` в состоянии `Up` (или `running`).

Теперь проверим версию сервера Ollama, выполнив команду внутри запущенного контейнера через `docker compose exec`:

```
docker  compose  exec  ollama  ollama  --version  
```

Если сразу после старта контейнера команда сообщает, что внутренний сервер (демон) Ollama ещё не готов или не отвечает, подождите немного, проверьте состояние через `docker compose ps` и посмотрите журнал запуска командой `docker compose logs --tail=80 ollama`, а затем повторите проверку версии.

Когда сервер откликнулся, скачаем проверочную модель [`qwen2.5:0.5b`](<https://ollama.com/library/qwen2.5:0.5b>) внутрь тома контейнера:

```
docker  compose  exec  ollama  ollama  pull  qwen2.5:0.5b  
```

Как и в нативной ветке, тег `qwen2.5:0.5b` (около 398 МБ в реестре) выбран для проверки соединения. Семейство поддерживает русский язык, но размер файла не показывает потребление оперативной памяти, а выбор модели для упражнения не означает рекомендации для рабочих задач.

Убедимся, что модель появилась в локальном списке контейнера:

```
docker  compose  exec  ollama  ollama  list  
```

В выводе должна быть указана модель `qwen2.5:0.5b`. Запустим тестовую генерацию ответа прямо в контейнере:

```
docker  compose  exec  ollama  ollama  run  qwen2.5:0.5b  "Ответь одним коротким предложением: для чего нужен список дел?"  
```

При работе на процессоре (CPU) генерация даже короткого ответа может занять заметное время. Дождёмся, пока модель допишет осмысленное предложение до конца и вернёт управление терминалу. Точное совпадение текста нам не важно.

## Укажем адрес Ollama в Open WebUI

Если модель ответила в терминале, сервер Ollama готов к следующей проверке. Теперь объясним контейнеру Open WebUI, по какому сетевому адресу искать этот сервер.

Адрес `localhost:11434` или `127.0.0.1:11434` здесь не подходит: запрос к Ollama отправляет процесс Open WebUI внутри собственного Docker-контейнера. Для любого контейнера адрес `localhost` (`127.0.0.1`) указывает на него самого, а внутри контейнера `open-webui` никакой Ollama нет.

Выбор правильного адреса зависит от того, где именно запущена Ollama в вашей ветке:

| Ваша ветка | Какой базовый URL вводить в Open WebUI | Почему используется этот адрес |
| --- | --- | --- |
| Windows и macOS (приложение Ollama + Docker Desktop) | `http://host.docker.internal:11434` | Специальное имя [`host.docker.internal`](<https://docs.docker.com/desktop/features/networking/>) в Docker Desktop позволяет контейнеру обратиться к сервису, работающему на основной системе (хосте). |
| Ubuntu Linux (сервис `ollama` в том же Compose) | `http://ollama:11434` | Внутри общей сети Docker Compose контейнеры находят друг друга по имени сервиса (`ollama`) и внутреннему порту (`11434`) через [встроенный DNS](<https://docs.docker.com/compose/how-tos/networking/>) . |

В Linux есть особенность. В нашем файле `compose.yaml` у сервиса `open-webui` с прошлого урока записана строка `extra_hosts: - host.docker.internal:host-gateway`. Может возникнуть вопрос: почему бы тогда и в Linux не установить Ollama прямо в систему и не обратиться к ней через `host.docker.internal`? Дело в том, что нативная Ollama по умолчанию [слушает только локальный интерфейс `127.0.0.1:11434`](<https://docs.ollama.com/faq>) . Запись `host-gateway` в Linux перенаправляет запросы контейнера на сетевой мост Docker хост-машины, но сервис, привязанный строго к `127.0.0.1`, с этого моста всё равно недоступен. Чтобы не менять сетевые настройки хоста и не расширять привязку портов в системе, мы и запустили Ollama соседним контейнером в общей сети Compose.

Перейдём к настройке в браузере:

1. Откроем Open WebUI (по умолчанию `http://127.0.0.1:3000`) и войдём под учётной записью администратора.
2. Откроем меню настроек администратора. Согласно [официальному руководству по подключению Ollama](<https://docs.openwebui.com/getting-started/quick-start/connect-a-provider/starting-with-ollama/>) , путь в английском интерфейсе выглядит как **Settings → Admin → Connections** (в русской локализации разделы могут называться «Настройки» → «Панель администратора» или «Администрирование» → «Подключения»; точные подписи и расположение элементов зависят от версии Open WebUI).
3. Найдём блок управления подключениями **Ollama API** (Manage Ollama API Connections). Адрес вводим в секции Ollama; расположенная рядом секция OpenAI API предназначена для другого типа подключения.
4. В поле адреса введём базовый URL из таблицы выше для своей ветки:

   - `http://host.docker.internal:11434` — для Windows и macOS;
   - `http://ollama:11434` — для Ubuntu Linux.
5. Убедимся, что указан именно базовый адрес сервера и порт, без добавочных путей вроде `/api/tags`, `/api` или `/v1`. Поле ключа API (API Key) оставляем пустым, так как [локальный сервер Ollama не требует аутентификации](<https://docs.ollama.com/api/authentication/>) .
6. Сохраним изменения кнопкой сохранения в интерфейсе настроек.

Мы настраиваем адрес прямо через панель администратора и не добавляем переменную `OLLAMA_BASE_URL` в файл `open-webui.env`, чтобы не задавать адрес одновременно в двух местах. Как указано в [справочнике по переменным окружения Open WebUI](<https://docs.openwebui.com/reference/env-configuration/>) , эти параметры также могут задаваться через окружение (причём список `OLLAMA_BASE_URLS` имеет приоритет над одиночной `OLLAMA_BASE_URL`), но в нашей установке проще и нагляднее управлять адресом из интерфейса.

## Получим ответ в новом чате

Когда адрес сохранён, проверим, проходит ли сообщение через Open WebUI к модели и возвращается ли ответ. Имя модели в выпадающем списке показывает, что она доступна для выбора. Один этот список, который может быть сохранён в кэше, ещё не подтверждает, что сервер сейчас отвечает. Полная проверка завершается только тогда, когда модель сгенерирует ответ в чате.

Выполним проверку на своей системе:

1. Перейдём на главный экран Open WebUI и откроем новый чат (если список моделей не обновился сразу, можно обновить страницу в браузере).
2. В списке выбора модели найдём и выберем точно тот тег, который мы скачивали в терминале: **`qwen2.5:0.5b`**.
3. Отправим в чат тот же самый короткий вопрос:

```
Ответь одним коротким предложением: для чего нужен список дел?  
```

4. Дождёмся завершения генерации.

Если модель выбрана, индикатор загрузки сменился текстом, и в окне чата появилось законченное осмысленное предложение по теме вопроса, значит, подключение работает. Текст ответа в веб-интерфейсе не обязан дословно совпадать с тем, что модель выдала ранее в терминале: языковые модели генерируют текст заново при каждом обращении. Также не стоит оценивать по этому короткому тесту общие интеллектуальные способности модели.

## Проверим, где остановилось подключение

Если на каком-то шаге команда вернула ошибку, список моделей в интерфейсе остался пустым или ответ в чате не появляется, не спешите переустанавливать Docker или удалять тома. Найдём точное место обрыва, проверяя цепочку от сервера Ollama к контейнеру Open WebUI.

### 1. Терминал пишет, что команда `ollama` не найдена

- **В Windows:** убедитесь, что установщик Ollama для Windows завершил работу, а команды вводятся в обычном окне **PowerShell**, а не внутри терминала Ubuntu (WSL2). Если окно PowerShell было открыто ещё до установки программы, закройте его и откройте новое, чтобы обновилась переменная `PATH`.
- **На macOS:** проверьте, что приложение Ollama перенесено в папку `Applications` и хотя бы один раз запущено, после чего перезапустите программу «Терминал».
- **В Ubuntu Linux:** в нашей ветке программа не установлена в саму систему. Все команды `ollama` нужно запускать внутри контейнера через префикс `docker compose exec ollama ...` (и с `sudo`, если вы используете его для Docker), находясь в папке `~/projects/open-webui`.

### 2. Команда `ollama list` или `ollama run` выдаёт ошибку соединения с сервером

Это означает, что клиент командной строки не может достучаться до фонового процесса самой Ollama.

- **В Windows и macOS:** проверьте, запущено ли приложение Ollama (в Windows посмотрите на значок в трее, на Mac можно открыть его через строку меню или Spotlight), и запустите его при необходимости. Дополнительно можно проверить, откликается ли локальный HTTP API на стандартном адресе `127.0.0.1:11434`, обратившись к точке [`/api/tags`](<https://docs.ollama.com/api/tags>) . В **PowerShell на Windows** выполните:

  ```
  Invoke-RestMethod  - Uri http: // 127.0 . 0.1 : 11434 / api / tags  
  ```

   В **Терминале macOS** выполните:

  ```
  curl  --fail  --silent  --show-error  http://127.0.0.1:11434/api/tags  
  ```

   Исправный сервер вернёт JSON со списком `models`. В PowerShell команда `Invoke-RestMethod` преобразует этот ответ в объект, поэтому в окне он будет отображаться иначе, чем при вызове `curl`.
- **В Ubuntu Linux:** адрес `127.0.0.1:11434` из браузера или терминала самой Ubuntu не проверяет наш контейнер Ollama: мы не публиковали его порт на хост-машину. Вместо этого перейдите в `~/projects/open-webui`, проверьте статус контейнера и посмотрите его журнал:

  ```
  cd  ~/projects/open-webui  
  docker  compose  ps  
  docker  compose  logs  --tail=80  ollama  
  ```

   Если сервис `ollama` остановлен или отсутствует в списке, сначала проверьте синтаксис файла командой `docker compose config --quiet`, а затем запустите сервис через `docker compose up -d ollama`.

### 3. Сервер отвечает, но массив `models` пуст

Если команда `ollama list` (или запрос к `/api/tags`) выполняется без ошибок, но не показывает ни одной модели (в JSON возвращается пустой список `"models": []`), значит, сервер работает, но в этом конкретном экземпляре Ollama ещё нет скачанных моделей. Выполните загрузку `ollama pull qwen2.5:0.5b` (или `docker compose exec ollama ollama pull qwen2.5:0.5b` на Linux) и дождитесь завершения загрузки. Помните, что наличие модели на хосте само по себе ещё не доказывает, что контейнер Open WebUI видит этот сервер.

### 4. В терминале модель отвечает, но в Open WebUI список моделей пуст или выходит ошибка подключения

Если в командной строке `ollama list` и `ollama run` работают штатно, а веб-интерфейс не видит сервер, следующим проверим участок между контейнером `open-webui` и сервером Ollama:

1. Откройте настройки администратора (**Settings → Admin → Connections**) и проверьте введённый адрес:

   - для Windows и macOS должно быть `http://host.docker.internal:11434`;
   - для Ubuntu Linux должно быть `http://ollama:11434`.
2. Убедитесь, что в конце адреса не приписаны служебные пути `/api/tags`, `/api` или `/v1`, адрес вписан именно в секцию **Ollama API** (а не OpenAI), и вы нажали кнопку сохранения. Если ранее вы самостоятельно добавляли в окружение переменные `OLLAMA_BASE_URL` или `OLLAMA_BASE_URLS`, проверьте их значения: по [документации Open WebUI](<https://docs.openwebui.com/reference/env-configuration/>) `OLLAMA_BASE_URLS` имеет приоритет над одиночной переменной.
3. Для Ubuntu Linux проверьте, что оба контейнера запущены в одном проекте `open-webui` из папки `~/projects/open-webui` (`docker compose ps`). Они должны находиться в общей сети Compose; сама команда `ps` показывает состояние контейнеров, а не проверяет их сетевую связь.
4. Посмотрим журнал Open WebUI, чтобы увидеть текст сетевой ошибки. Для установки через Compose выполним следующие команды в терминале своей системы; в Windows это Ubuntu WSL2:

   ```
   cd  ~/projects/open-webui  
   docker  compose  logs  --tail=80  open-webui  
   ```

    Если в Windows выбрана установка через `docker run`, в том же терминале Ubuntu WSL2 посмотрим журнал существующего контейнера по имени из предыдущего урока:

   ```
   docker  logs  --tail=80  open-webui  
   ```

    Команда [docker logs](<https://docs.docker.com/reference/cli/docker/container/logs/>) читает журнал и не меняет способ установки. Для неё не нужна папка проекта Compose.
5. В Windows и macOS доступность адреса `host.docker.internal:11434` зависит от работы сетевой подсистемы Docker Desktop и правил локального брандмауэра. Если в логах `open-webui` видна ошибка соединения или тайм-аут при обращении к `host.docker.internal:11434`, проверьте, что приложение Ollama и Docker Desktop запущены на одной системе и соединение не блокируется защитным ПО.

### 5. Модель `qwen2.5:0.5b` видна в списке чата, но ответ не генерируется или обрывается

Список моделей получают через [`GET /api/tags`](<https://docs.ollama.com/api/tags>) , но отображённое имя может остаться в кэше. Если ответа нет, отдельно проверим запуск модели:

- В Windows повторите тест в PowerShell, на macOS в «Терминале»: `ollama run qwen2.5:0.5b "Ответь одним коротким предложением: для чего нужен список дел?"`. В Ubuntu Linux выполняйте его в терминале Ubuntu из папки `~/projects/open-webui` через контейнер: `docker compose exec ollama ollama run qwen2.5:0.5b "Ответь одним коротким предложением: для чего нужен список дел?"`. Если вы используете Docker с `sudo`, добавьте этот префикс и здесь.
- Если на компьютере мало свободной оперативной памяти или расчёты идут на загруженном процессоре (особенно в контейнерной CPU-ветке на Linux), загрузка весов модели в память и генерация первых слов могут занимать продолжительное время.
- Для установки через Compose посмотрим `docker compose logs --tail=80 open-webui`, а в Ubuntu Linux также `docker compose logs --tail=80 ollama`. В Windows с установкой через `docker run` используем `docker logs --tail=80 open-webui` в Ubuntu WSL2. Журналы помогут проверить, не завершился ли процесс модели из-за нехватки памяти.

### Чего не нужно делать при диагностике

В [разделе устранения ошибок подключения Open WebUI](<https://docs.openwebui.com/troubleshooting/connection-error/>) и на форумах можно встретить советы, рассчитанные на другие сетевые схемы. В нашей локальной установке **не применяйте** следующие действия как универсальный способ починки:

- **Не меняйте привязку Ollama на `0.0.0.0` (`OLLAMA_HOST=0.0.0.0`) и не пробрасывайте порт `11434` наружу.** Поскольку [локальный API Ollama работает без пароля и ключей](<https://docs.ollama.com/api/authentication/>) , открытие порта на всех сетевых интерфейсах может сделать ваш сервер моделей доступным для других устройств в сети в обход страницы входа Open WebUI.
- **Не отключайте системный брандмауэр (файрвол) и не задавайте переменную `OLLAMA_ORIGINS=*`.**
- **Не удаляйте том `open-webui_open-webui` и не используйте флаги сброса базы данных ради исправления опечатки в URL.** Опечатку в адресе исправляем и заново сохраняем в панели администратора (**Settings → Admin → Connections**), сохранив все свои чаты и учётную запись.

Урок завершён, когда выбранная в чате модель `qwen2.5:0.5b` возвращает законченный ответ на ваш вопрос.

## Материалы урока

- [Open WebUI: подключение Ollama docs.openwebui.com](<https://docs.openwebui.com/getting-started/quick-start/connect-a-provider/starting-with-ollama/>)
- [Ollama: команды CLI docs.ollama.com](<https://docs.ollama.com/cli>)
- [Ollama в Docker docs.ollama.com](<https://docs.ollama.com/docker>)
- [Docker Compose: сеть сервисов docs.docker.com](<https://docs.docker.com/compose/how-tos/networking/>)

## Отметить прохождение

Отметьте урок после того, как получили проверяемый результат из практической части.

Урок пройден

![Тимофей Ермолаев](https://timofei-ermolaev.ru/_astro/timofei-ermolaev-portrait.s0mCFw-J_2r7Nkv.webp)

## Об авторе

### Тимофей Ермолаев

Директор по информационным технологиям (CIO)

Пишу о больших языковых моделях, автоматизации и применении ИИ в бизнесе. В статьях разделяю личный опыт, выводы исследований и практические рекомендации.

[Подробнее об авторе](<https://timofei-ermolaev.ru/ob-avtore/>)
