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

Обзор развертывания DeepSeek на сервере

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

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

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

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

  • Аппаратное обеспечение: Наличие графического процессора (GPU) NVIDIA для поддержки CUDA.

  • Сеть: Открытые порты 80 (для проверки SSL) и 443 (HTTPS).

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

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

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

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

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

  1. Подготовка окружения:

  2. Установка системных пакетов curl и ca-certificates.

  3. Установка Docker и драйверов NVIDIA CUDA.

  4. Установка движка Ollama:

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

  6. Создание системного пользователя ollama.

  7. Настройка службы systemd с параметрами:

  8. OLLAMA_HOST=0.0.0.0 (доступ извне).

  9. OLLAMA_ORIGINS=* (разрешение запросов).

  10. LLAMA_FLASH_ATTENTION=1 (оптимизация производительности).

  11. Загрузка модели deepseek-r1:14b.

  12. Развертывание веб-интерфейса:

  13. Запуск контейнера Open WebUI с поддержкой CUDA.

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

  15. Создание конфигураций Nginx для автоматического получения сертификатов через Certbot.

  16. Настройка перенаправления трафика (HTTP → HTTPS).

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

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

Open WebUI

Контейнер предоставляет графический интерфейс для взаимодействия с моделями.

  • Имя образа: ghcr.io/open-webui/open-webui:cuda

  • Режим сети: host (использует сетевой стек хоста).

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

  • ENV: dev

  • OLLAMA_BASE_URLS: http://127.0.0.1:11434

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

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

  • Особенности: Поддержка GPU через device_requests.

Nginx Certbot

Контейнер для управления SSL-сертификатами и проксирования.

  • Имя образа: 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

Кастомные скрипты и дополнительные настройки

Для обеспечения работы веб-интерфейса выполняются следующие действия:

  • Настройка Nginx: В конфигурационные файлы пользователя (/data/nginx/user_conf.d/) вносятся изменения для проксирования запросов с порта 443 на локальный адрес http://127.0.0.1:8080.

  • Подготовка ACME: Внутри контейнера Nginx создается директория /var/www/certbot/.well-known/acme-challenge для прохождения проверки владения доменом при получении SSL.

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

Тип данных Путь на сервере
Конфигурации Nginx (пользовательские) /data/nginx/user_conf.d/
Переменные окружения Nginx /data/nginx/nginx-certbot.env
Конфигурация службы Ollama (override) /etc/systemd/system/ollama.service.d/override.conf
Данные Open WebUI (Docker Volume) open-webui
Резервная копия сервиса Ollama /etc/systemd/system/ollama.service.bak

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

  • 443 (HTTPS): Основной порт для доступа к интерфейсу через доменное имя.

  • 80 (HTTP): Используется для автоматического перенаправления на HTTPS и проверки SSL.

  • 11434: Локальный порт Ollama API (доступен внутри хоста).

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