Обзор развертывания OpenWebUI на сервере¶
Предварительные требования¶
Для корректной работы приложения требуются следующие условия:
-
Операционная система: Ubuntu.
-
Ядро: HWE kernel (linux-generic-hwe-22.04).
-
Драйверы: Наличие графического процессора NVIDIA и установленные рекомендуемые драйверы NVIDIA.
-
Порты:
-
8080— внутренний порт приложения. -
443— внешний порт (HTTPS).
-
FDQN итоговой панели на домене hostkey.in¶
| Параметр | Значение |
|---|---|
| Префикс | north-mini |
| Домен | hostkey.in |
| Полный шаблон | north-mini{Server_ID_from_Invapi}.hostkey.in |
Структура файлов и каталогов¶
Основные директории, используемые в системе:
-
/root/nginx— рабочая директория для конфигурации Nginx и Docker Compose. -
/data/nginx/user_conf.d— директория с пользовательскими конфигурациями Nginx. -
/data/nginx/nginx-certbot.env— файл переменных окружения для Certbot.
Процесс установки приложения¶
Развертывание включает в себя следующие этапы:
-
Обновление системных пакетов и установка ядра HWE.
-
Установка драйверов NVIDIA (при наличии оборудования).
-
Установка и запуск Ollama через официальный скрипт.
-
Загрузка модели LLM
north-mini-code-1.0в Ollama. -
Развертывание контейнера OpenWebUI.
-
Настройка обратного прокси Nginx с автоматическим получением SSL-сертификатов через Certbot.
Контейнеры 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 (Certbot)¶
-
Имя образа:
jonasal/nginx-certbot:latest -
Режим сети:
host -
Тома (volumes):
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d
-
-
Переменные окружения: Загружаются из файла
/data/nginx/nginx-certbot.env(включаяCERTBOT_EMAIL=hkadm@hostkey.com). -
Политика перезапуска:
unless-stopped
Базы данных¶
Приложение использует Ollama в качестве бэкенда для работы с языковыми моделями. Данные OpenWebUI хранятся во внутреннем томе Docker open-webui.
Инструкция по обновлению приложения¶
Обновление выполняется_pull и перезапуск контейнеров. Для обновления необходимо выполнить команды: docker compose pull && docker compose up -d в директории /root/nginx.