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

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

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

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

  • Операционная система: Debian или Ubuntu.

  • Наличие графического процессора NVIDIA (требуется драйвер версии 580 или выше).

  • Установленный пакетный менеджер apt и pip.

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

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

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

Структура файлов и каталогов

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

  • /root/ComfyUI — рабочая директория приложения (исходный код, модели, пользовательские данные).

  • /root/nginx — конфигурация прокси-сервера.

  • /etc/systemd/system/comfyui.service — файл службы для управления приложением.

  • /data/nginx/user_conf.d — пользовательские конфигурации Nginx.

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

Развертывание ComfyUI выполняется в несколько этапов:

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

  2. Обновление системных пакетов через apt.

  3. Проверка наличия видеокарты и версии установленного драйвера.

  4. Если версия драйвера ниже 580, выполняется полная очистка старых драйверов, установка заголовков ядра (linux-headers) и установка актуального открытого драйвера nvidia-open.

  5. Добавление репозитория NVIDIA CUDA для обеспечения корректной работы с GPU.

  6. Установка окружения Python:

  7. Клонирование репозитория ComfyUI из GitHub в директорию /root/ComfyUI.

  8. Установка python3-pip.

  9. Принудительная установка PyTorch версии 13.0 с поддержкой CUDA для обеспечения аппаратного ускорения.

  10. Установка зависимостей приложения через pip install -r requirements.txt.

  11. Настройка моделей и рабочих процессов:

  12. Загрузка модели flux1-dev-fp8.safetensors из HuggingFace в директорию /root/ComfyUI/models/checkpoints/.

  13. Создание рабочей директории для пользовательских сценариев (workflows).

  14. Развертывание предустановленного JSON-файла рабочего процесса (flux1-dev-fp8.json).

  15. Настройка сервиса:

  16. Создание конфигурационного файла comfy.settings.json с базовыми параметрами интерфейса.

  17. Регистрация приложения в системе как службы systemd.

Права доступа и безопасность

  • Использование blacklist nouveau для предотвращения конфликтов с драйвером NVIDIA.

  • Установка прав доступа на директории (например, 0755 для папок пользовательских сценариев).

  • Настройка прав на файлы конфигурации (0644).

  • Ограничение доступа к системным файлам через механизмы управления правами владельца root.

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

Для обеспечения работы веб-интерфейса с SSL используется контейнерный прокси-сервер:

Параметр Значение
Имя образа jonasal/nginx-certbot:latest
Режим сети host
Тома (volumes) nginx_secrets:/etc/letsencrypt, /data/nginx/user_conf.d:/etc/nginx/user_conf.d
Переменные окружения CERTBOT_EMAIL=hkadm@hostkey.com
Политика перезапуска unless-stopped

Контейнер отвечает за автоматическое получение и обновление SSL-сертификатов через Certbot и проксирование трафика на внутренний порт приложения.

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

В процессе развертывания выполняются следующие действия:

  • Загрузка моделей: Скрипт использует wget с поддержкой докачки (--continue) для загрузки тяжелых файлов моделей, чтобы избежать ошибок при обрыве соединения.

  • Настройка hosts: Удаление старых записей huggingface.co из /etc/hosts для обеспечения корректного сетевого взаимодействия.

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

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

  1. Перейти в директорию с приложением: cd /root/ComfyUI.

  2. Выполнить обновление исходного кода (через git pull, если используется ручное управление).

  3. Обновить зависимости Python: pip install -r requirements.txt --upgrade.

  4. Перезапустить службу приложения: systemctl restart comfyui.

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

  • Конфигурация ComfyUI: /root/ComfyUI/user/default/comfy.settings.json

  • Рабочие процессы (Workflows): /root/ComfyUI/user/default/workflows/flux1-dev-fp8.json

  • Модели (Checkpoints): /root/ComfyUI/models/checkpoints/

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

Порт Назначение
443 Внешний доступ через HTTPS (через Nginx)
8188 Внутренний порт приложения ComfyUI

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

Управление приложением осуществляется через системную службу systemd:

  • Запуск: systemctl start comfyui

  • Остановка: systemctl stop comfyui

  • Проверка статуса: systemctl status comfyui

  • Включение автозагрузки: systemctl enable comfyui

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