Самый надежный, быстрый и рекомендуемый разработчиками способ установки Open WebUI — использование Docker. Поскольку Ollama уже работает на этом же хосте, главная задача — правильно настроить сеть, чтобы контейнер Open WebUI мог «достучаться» до локального Ollama.
Ниже приведены два варианта установки через Docker. Вариант 1 — самый простой и рекомендуемый для связки на одном хосте.
Подготовка (если Docker еще не установлен)
Если Docker еще не стоит на вашем Debian 13, установите его официальной утилитой:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# Перелогиньтесь в систему, чтобы права Docker применились
Вариант 1: Использование --network host (Рекомендуется)
Этот метод заставляет контейнер Open WebUI использовать сетевой стек хоста. Благодаря этому Open WebUI будет видеть localhost (и Ollama на порту 11434) точно так же, как и ваша основная система.
- Запустите контейнер:
docker run -d \ -v open-webui:/app/backend/data \ --network host \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main - Доступ к интерфейсу:
Откройте в браузере:http://<IP-адрес-вашего-сервера>:8080
(Так как мы используемhostсеть, Open WebUI займет порт8080напрямую на хосте). - Первый вход:
При первом открытии вам предложат создать учетную запись. Первый зарегистрированный пользователь автоматически получит права Администратора.
Вариант 2: Изолированная сеть Docker (Если нужен другой порт, например, 3000)
Если вы хотите, чтобы Open WebUI работал на порту 3000 (или другом), либо планируете в будущем ставить Nginx/Caddy реверс-прокси, нужно использовать стандартную сеть Docker.
В этом случае контейнер не сможет обратиться к Ollama по адресу 127.0.0.1, поэтому нужно сделать две вещи:
Шаг 2.1: Разрешить Ollama принимать запросы из сети Docker
По умолчанию Ollama слушает только 127.0.0.1. Нужно заставить его слушать все интерфейсы (или конкретно шлюз Docker).
- Откройте редактор переопределений systemd для Ollama:
sudo systemctl edit ollama - Добавьте следующие строки в открывшийся файл:
[Service] Environment="OLLAMA_HOST=0.0.0.0" - Сохраните файл и перезапустите Ollama:
sudo systemctl daemon-reload sudo systemctl restart ollama
Шаг 2.2: Запуск Open WebUI с пробросом портов
Теперь запускаем контейнер, пробрасываем порт 3000 и указываем контейнеру, что Ollama находится на специальном DNS-имени host.docker.internal:
docker run -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
Доступ к интерфейсу: http://<IP-адрес-вашего-сервера>:3000
⚠️ Важные нюансы для Debian 13
- Брандмауэр (UFW / iptables):
Если вы планируете заходить в веб-интерфейс с других компьютеров в локальной сети, не забудьте открыть нужный порт в фаерволе:# Для Варианта 1 (порт 8080) sudo ufw allow 8080/tcp # Для Варианта 2 (порт 3000) sudo ufw allow 3000/tcpЕсли вы используете iptables напрямую вместо ufw, добавьте соответствующее правило вINPUT. - Первый запуск может занять время:
При самом первом старте контейнеру нужно инициализировать базу данных и подтянуть внутренние зависимости. Если страница долго грузится или выдает ошибку 502/504 — просто подождите 1-2 минуты и обновите страницу. Посмотреть статус можно командой:docker logs -f open-webui. - Безопасность (Если сервер в интернете):
Если ваш Debian 13 имеет белый IP-адрес в интернете, обязательно настройте реверс-прокси (Nginx/Caddy) с HTTPS-сертификатом (Let’s Encrypt) перед Open WebUI. Передача данных, логинов и запросов к LLM по открытому HTTP крайне нежелательна. - Обновление в будущем:
Когда выйдет новая версия Open WebUI, обновить её будет очень просто:docker pull ghcr.io/open-webui/open-webui:main # Затем просто пересоздайте контейнер (ваша база данных и настройки сохранятся в томе open-webui) docker stop open-webui && docker rm open-webui # И выполните команду docker run ... из Варианта 1 или 2 заново
OpenWEBUI не видит модель gemma3:12b работающую на Ollama
Это распространенная ситуация при связке Docker + Ollama на одном хосте. Давайте пройдемся по шагам от самого простого к более сложному, чтобы найти и устранить причину.
Шаг 1: Убедимся, что Ollama действительно видит модель
Выполните в терминале хоста (Debian):
ollama list
Убедитесь, что gemma3:12b есть в списке. Иногда модель может быть в процессе загрузки или называться иначе (например, просто gemma3 или gemma3:latest). Если её нет, загрузите её: ollama pull gemma3:12b.
Шаг 2: Проверим доступность API Ollama с хоста
Выполните команду:
curl http://127.0.0.1:11434/api/tags
Вы должны получить JSON-ответ со списком ваших моделей. Если ответ есть, значит Ollama работает корректно. Если ошибка «Connection refused» — служба Ollama не запущена.
Шаг 3: Проверьте настройки подключения внутри Open WebUI
- Откройте веб-интерфейс Open WebUI.
- Нажмите на свой аватар (внизу слева) → Admin Panel (Панель администратора).
- Перейдите в раздел Settings (Настройки) → Connections (Подключения).
- Посмотрите на поле Ollama Base URL.
- По умолчанию там может быть указано
http://ollama:11434. Это не сработает в режиме--network host, так как внутри контейнера нет DNS-имениollama. - Измените его на:
http://127.0.0.1:11434илиhttp://localhost:11434.
- По умолчанию там может быть указано
- Нажмите кнопку Save (Сохранить) или значок обновления справа от поля. Список моделей должен появиться.
Шаг 4: Настройте Ollama на прослушивание всех интерфейсов (Самая частая причина)
Даже при использовании --network host, служба Ollama в systemd по умолчанию может быть жестко привязана только к 127.0.0.1, что иногда вызывает конфликты маршрутизации с Docker. Нужно явно разрешить ей слушать 0.0.0.0.
- Откройте переопределение настроек службы Ollama:
sudo systemctl edit ollama - В открывшемся пустом редакторе (nano) вставьте следующие строки:
[Service] Environment="OLLAMA_HOST=0.0.0.0:11434" - Сохраните файл (
Ctrl+O,Enter) и выйдите (Ctrl+X). - Перезапустите службу Ollama, чтобы применить изменения:
sudo systemctl daemon-reload sudo systemctl restart ollama - После этого вернитесь в Open WebUI и снова нажмите «Refresh» в настройках подключений.
Шаг 5: Альтернативный вариант подключения (через реальный IP)
Если 127.0.0.1 упорно не работает, укажите в настройках Open WebUI (Connections) реальный LAN IP-адрес вашего сервера Debian.
Например: http://192.168.1.50:11434 (замените на ваш реальный IP, который можно узнать командой ip a). Это гарантированно обходит любые проблемы с localhost внутри Docker.
Шаг 6: Посмотрите логи Open WebUI
Если ничего не помогло, давайте посмотрим, какую именно ошибку выдает Open WebUI при попытке достучаться до Ollama:
docker logs open-webui | grep -i ollama