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

Обзор развертывания North-mini на сервере

Предварительные требования

Для корректной работы приложения сервер должен соответствовать следующим требованиям:

  • Операционная система: Ubuntu (рекомендуется версия 22.04 LTS).

  • Аппаратное обеспечение: Наличие графического процессора NVIDIA для ускорения вычислений.

  • Доступ: Права суперпользователя (root) для установки системных пакетов и драйверов.

  • Сеть: Открытые порты 80/TCP, 443/TCP (для работы веб-интерфейса через SSL) и 11434/TCP (для локального взаимодействия с Ollama).

FDQN итоговой панели на домене hostkey.in

Для доступа к приложению используется следующий шаблон доменного имени:

Параметр Значение
Префикс north-mini
Домен hostkey.in
Полный шаблон north-mini{Server_ID_from_Invapi}.hostkey.in

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

Процесс развертывания включает в себя несколько этапов подготовки системы и запуска компонентов:

  1. Подготовка операционной системы:

  2. Обновление кэша пакетов apt и обновление всех установленных системных пакетов до актуальных версий.

  3. Установка ядра HWE (Hardware Enablement) для обеспечения поддержки современного оборудования.

  4. Установка утилиты ubuntu-drivers-common.

  5. Настройка графического ускорителя NVIDIA:

  6. Проверка наличия видеокарты NVIDIA в системе.

  7. Автоматическая установка рекомендуемого драйвера NVIDIA (если он еще не установлен).

  8. Перезагрузка системы для применения изменений ядра и драйверов.

  9. Установка среды выполнения ИИ:

  10. Загрузка и запуск официального скрипта установки Ollama.

  11. Настройка системной службы ollama для автоматического запуска при загрузке сервера.

  12. Автоматическая загрузка языковой модели: north-mini-code-1.0.

  13. Развертывание контейнеров:

  14. Установка Docker и необходимых модулей Python (python3-docker).

  15. Запуск веб-интерфейса OpenWebUI в Docker-контейнере.

  16. Настройка проксирования и SSL:

  17. Создание директории /root/nginx для конфигурационных файлов.

  18. Развертывание контейнера Nginx с поддержкой автоматического получения сертификатов Let's Encrypt (Certbot).

  19. Настройка обратного проксирования (proxy_pass) на локальный порт приложения.

Контейнеры Docker и их запуск

В системе развернуты следующие контейнеры:

OpenWebUI

  • Образ: ghcr.io/open-webui/open-webui:main

  • Режим сети: host (для прямого взаимодействия с локальными сервисами)

  • Переменные окружения:

  • OLLAMA_BASE_URL: http://127.0.0.1:11434

  • Тома (volumes): open-webui:/app/backend/data

  • Политика перезапуска: always

Nginx (Certbot Proxy)

  • Образ: jonasal/nginx-certbot:latest

  • Режим сети: host

  • Переменные окружения:

  • CERTBOT_EMAIL: hkadm@hostkey.com

  • Тома (volumes):

  • nginx_secrets:/etc/letsencrypt

  • /data/nginx/user_conf.d:/etc/nginx/user_conf.d

  • Политика перезапуска: unless-stopped

Инструкция по обновлению приложения

Для обновления основного компонента (OpenWebUI) необходимо выполнить следующие действия:

  1. Перейти в директорию, где запущен контейнер (если используется compose).

  2. Выполнить команду для подтягивания новых образов и перезапуска:

    docker compose pull && docker compose up -d
    

Расположение конфигурационных файлов и данных

  • Конфигурации Nginx: /data/nginx/user_conf.d/

  • Данные OpenWebUI: Хранятся в Docker Volume open-webui.

  • Сертификаты SSL: Хранятся в Docker Volume nginx_secrets.

  • Секреты и переменные Nginx: /data/nginx/nginx-certbot.env

Доступные порты для подключения

Порт Протокол Назначение
443 TCP Веб-интерфейс (HTTPS)
80 TCP HTTP (для проверки сертификатов)
11434 TCP API Ollama (локально)

Запуск, остановка приложения

Управление контейнером веб-интерфейса осуществляется через Docker:

  • Остановка: docker stop open-webui

  • Запуск: docker start open-webui

  • Просмотр логов: docker logs -f open-webui

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