Обзор развертывания OpenWebUI и Ollama на сервере¶
Предварительные требования¶
Для корректной работы приложения сервер должен соответствовать следующим требованиям:
-
Операционная система: Ubuntu (рекомендуется версия 22.04 LTS).
-
Наличие графического ускорителя NVIDIA (для аппаратного ускорения вычислений LLM).
-
Доступ к интернету для загрузки пакетов, драйверов и моделей.
-
Права суперпользователя (root) для установки системных компонентов.
FDQN итоговой панели на домене hostkey.in¶
Для доступа к интерфейсу приложения используется следующий шаблон доменного имени:
| Параметр | Значение |
|---|---|
| Префикс | gemma26b |
| Домен | hostkey.in |
| Полный шаблон | gemma26b{Server_ID}.hostkey.in |
Процесс установки приложения¶
Процесс развертывания включает в себя несколько этапов подготовки системы и запуска компонентов:
-
Подготовка операционной системы:
-
Обновление кэша пакетов
aptи обновление всех установленных системных пакетов до последних версий. -
Установка ядра HWE (Hardware Enablement) для обеспечения поддержки современного оборудования.
-
Установка утилиты
ubuntu-drivers-common. -
Настройка графического ускорителя:
-
Проверка наличия видеокарт NVIDIA через
lspci. -
Автоматическая установка рекомендуемых драйверов NVIDIA.
-
Перезагрузка системы для применения изменений в ядре и драйверах.
-
Установка движка нейросетей (Ollama):
-
Загрузка и выполнение официального установочного скрипта Ollama.
-
Настройка системной службы
systemdдля автоматического запуска Ollama при загрузке сервера. -
Автоматическая загрузка языковой модели
gemma4:26b. -
Развертывание интерфейса (Docker):
-
Установка среды выполнения Docker и необходимых модулей Python (
python3-docker). -
Запуск контейнера OpenWebUI с подключением к локальному сервису Ollama.
-
Настройка проксирования и SSL:
-
Создание директории
/root/nginxдля конфигурационных файлов. -
Развертывание контейнера Nginx для управления SSL-сертификатами через Certbot.
-
Настройка автоматического перенаправления трафика с порта 443 на внутренний порт приложения.
Контейнеры Docker и их запуск¶
В системе развернуты следующие контейнеры:
OpenWebUI
-
Имя образа:
ghcr.io/open-webui/open-webui:main -
Режим сети:
host -
Тома (volumes):
open-webui:/app/backend/data -
Переменные окружения:
OLLAMA_BASE_URL=http://127.0.0.1:11434 -
Политика перезапуска:
always
Nginx (Proxy)
-
Имя образа:
jonasal/nginx-certbot:latest -
Режим сети:
host -
Тома (volumes):
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d -
Политика перезапуска:
unless-stopped
Кастомные скрипты и дополнительные настройки¶
В процессе установки выполняются следующие действия по настройке окружения:
-
Загрузка моделей: Выполняется команда
ollama pull gemma4:26bдля предварительной подготовки весов нейросети. -
Конфигурация проксирования: В конфигурационные файлы Nginx вносятся изменения, устанавливающие
proxy_pass http://127.0.0.1:8080;, что связывает внешний трафик с внутренним сервисом приложения.
Инструкция по обновлению приложения¶
Для обновления основного интерфейса OpenWebUI необходимо выполнить перезапуск контейнера:
Расположение конфигурационных файлов и данных¶
-
Конфигурации Nginx:
/data/nginx/user_conf.d/ -
Данные OpenWebUI (Docker Volume):
open-webui -
Директория управления прокси:
/root/nginx/
Доступные порты для подключения¶
| Порт | Назначение | Протокол |
|---|---|---|
| 443 | Внешний доступ к интерфейсу (через SSL) | HTTPS |
| 11434 | Локальный API Ollama | HTTP |
| 8080 | Внутренний порт приложения | HTTP |