Перейти к содержанию

Обзор развертывания 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.

Процесс установки приложения

Развертывание включает в себя следующие этапы:

  1. Обновление системных пакетов и установка ядра HWE.

  2. Установка драйверов NVIDIA (при наличии оборудования).

  3. Установка и запуск Ollama через официальный скрипт.

  4. Загрузка модели LLM north-mini-code-1.0 в Ollama.

  5. Развертывание контейнера OpenWebUI.

  6. Настройка обратного прокси 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.

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×