Специально указала длинный текст баннера, чтобы посмотреть как он будет адаптировать на устройствах
Инструкция по установке и запуску Comfy UI на Linux

Инструкция по установке и запуску Comfy UI на Linux

Гайды Простой
0
0

Что такое ComfyUI

ComfyUI – это мощный открытый инструмент с нодовым (узловым) интерфейсом для генерации изображений, видео и аудио с помощью ИИ, прежде всего на основе моделей Stable Diffusion.

Принцип работы

В отличие от привычных интерфейсов с простой строкой ввода текста, ComfyUI предоставляет визуальный холст, на котором вы строите «пайплайн» генерации, соединяя блоки — ноды — друг с другом. Каждая нода выполняет отдельную функцию: загрузка модели, ввод промпта, настройка сэмплера, декодирование изображения и т.д. При запуске генерации система обходит граф нодов по порядку, подсвечивая активный шаг.

В этом гайде мы рассмотрим простейшие способы установки и запуска ComfyUI и моделей к ней на системе Linux, конкретно – Ubuntu 24.04.4 LTS.

Способ 1: Ручная установка без контейнера

Этот способ подходит тем, кто хочет максимальный контроль над окружением и прямой доступ к файлам моделей.

Шаг 1: Подготовка системы

Убедитесь, что установлены git и conda (или другой менеджер виртуальных окружений). ComfyUI требует Python 3.12 или выше.

python3 --version sudo apt update && sudo apt install -y git python3-pip pip3 install --upgrade pip wheel

Шаг 2: Создание виртуального окружения

Рекомендуется использовать Conda, чтобы не загрязнять системный Python.

conda create -n comfyenv python=3.12 conda activate comfyenv

Альтернатива через uv

pip install uv uv venv --python 3.12 .venv source .venv/bin/activate

Шаг 3: Клонирование репозитория

git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI

Шаг 4: Установка зависимостей GPU

Выберите вариант в зависимости от вашей видеокарты.

NVIDIA (CUDA 12.1)

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

AMD (ROCm 7.2)

AMD рекомендует использовать официальные wheel-файлы с repo.radeon.com, а не сборки с pytorch.org – они тестируются AMD значительно тщательнее.

Сначала необходимо установить ROCm-драйвер на хост-систему. AMD предоставляет для этой цели утилиту amdgpu-install

sudo apt update sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)" sudo usermod -a -G render,video $LOGNAME # Скачать и установить amdgpu-install (пример для Ubuntu 24.04) wget https://repo.radeon.com/amdgpu-install/6.4/ubuntu/noble/amdgpu-install_6.4.60400-1_all.deb sudo apt install ./amdgpu-install_6.4.60400-1_all.deb sudo apt update sudo apt install amdgpu-dkms rocm sudo reboot

Теперь устанавливаем PyTorch с поддержкой ROCm 7.2 (Python 3.12, x86_64):

wget https://repo.radeon.com/rocm/manylinux/rocm-rel-7.2/torch-2.9.1%2Brocm7.2.0.lw.git7e1940d4-cp312-cp312-linux_x86_64.whl wget https://repo.radeon.com/rocm/manylinux/rocm-rel-7.2/torchvision-0.24.0%2Brocm7.2.0.gitb919bd0c-cp312-cp312-linux_x86_64.whl wget https://repo.radeon.com/rocm/manylinux/rocm-rel-7.2/torchaudio-2.9.0%2Brocm7.2.0.gite3c6ee2b-cp312-cp312-linux_x86_64.whl wget https://repo.radeon.com/rocm/manylinux/rocm-rel-7.2/triton-3.5.1%2Brocm7.2.0.gita272dfa8-cp312-cp312-linux_x86_64.whl pip3 uninstall torch torchvision triton torchaudio pip3 install  torch-2.9.1+rocm7.2.0.lw.git7e1940d4-cp312-cp312-linux_x86_64.whl  torchvision-0.24.0+rocm7.2.0.gitb919bd0c-cp312-cp312-linux_x86_64.whl  torchaudio-2.9.0+rocm7.2.0.gite3c6ee2b-cp312-cp312-linux_x86_64.whl  triton-3.5.1+rocm7.2.0.gita272dfa8-cp312-cp312-linux_x86_64.whl

Проверка установки:

python3 -c "import torch; print(torch.cuda.is_available())" python3 -c "import torch; print(torch.cuda.get_device_name(0))"

Шаг 5: Установка зависимостей ComfyUI

pip install -r requirements.txt

Шаг 6: Добавление модели

Поместите файл .safetensors или .ckpt в папку ComfyUI/models/checkpoints/. Без хотя бы одной checkpoint-модели генерация работать не будет.

Шаг 7: Запуск

# Простой запуск (только с localhost) python main.py # С доступом из локальной сети python main.py --listen # С указанием GPU и кастомным портом python main.py --listen --port 8080 --cuda-device 0

Откройте браузер по адресу http://127.0.0.1:8188

Шаг 8: Обновление

cd ComfyUI git pull pip install -r requirements.txt

Способ 2: Запуск в Docker-контейнере

Docker изолирует всё окружение. Главное преимущество: в любой момент можно удалить и пересоздать контейнер без ручной чистки библиотек. На Linux не требуется Docker Desktop, достаточно Docker Engine.

Шаг 1: Установка Docker

sudo apt update sudo apt install -y docker.io docker-compose-plugin sudo systemctl enable --now docker sudo usermod -aG docker $USER

Перелогиньтесь для применения группы

Вариант A: NVIDIA GPU

Шаг 2A: Установка NVIDIA Container Toolkit

Без этого компонента Docker не увидит видеокарту.

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey  | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list  | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g'  | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt update && sudo apt install -y nvidia-container-toolkit sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker # Проверка docker run --rm --gpus all nvidia/cuda:12.1.1-base-ubuntu22.04 nvidia-smi

Шаг 3A: Создание директорий и docker-compose.yml

mkdir -p ~/comfyui-nvidia/{models/checkpoints,models/loras,models/vae,output,custom_nodes,workflows} cd ~/comfyui-nvidia

docker-compose.yml для NVIDIA:

version: "3.8" services: comfyui: image: ghcr.io/ai-dock/comfyui:latest-cuda container_name: comfyui-nvidia ports: - "8188:8188" volumes: - ./models:/workspace/ComfyUI/models - ./output:/workspace/ComfyUI/output - ./custom_nodes:/workspace/ComfyUI/custom_nodes - ./workflows:/workspace/ComfyUI/user environment: - CLI_ARGS=--listen 0.0.0.0 deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [gpu] restart: unless-stopped

Вариант B: AMD GPU (ROCm 7.2)

Для AMD Docker-подход особенно удобен: не нужно устанавливать ROCm на хост-систему вручную. Контейнер общается с GPU через устройства /dev/kfd и /dev/dri, которые уже доступны при наличии стандартного драйвера amdgpu.

Шаг 2B: Добавление пользователя в группы

sudo usermod -a -G render,video $USER

Перелогиньтесь

Шаг 3B: Создание директорий и docker-compose.yml

mkdir -p ~/comfyui-amd/{data/models/checkpoints,data/models/loras,data/models/vae,data/output,data/input,data/custom_nodes,data/user} cd ~/comfyui-amd

docker-compose.yml для AMD ROCm:

version: "3.8" services: comfyui-rocm: image: corundex/comfyui-rocm:latest container_name: comfyui-rocm devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video ports: - "8188:8188" volumes: - ./data/models:/workspace/ComfyUI/models - ./data/output:/workspace/ComfyUI/output - ./data/input:/workspace/ComfyUI/input - ./data/custom_nodes:/workspace/ComfyUI/custom_nodes - ./data/user:/workspace/ComfyUI/user environment: - HIP_VISIBLE_DEVICES=0 - CUDA_VISIBLE_DEVICES= - MODEL_DOWNLOAD=default restart: unless-stopped

Альтернативный запуск без docker-compose через docker run:

mkdir -p ~/comfyui-rocm-storage docker run -it --rm  --name comfyui-rocm  --device=/dev/kfd --device=/dev/dri  --group-add=video --ipc=host  --cap-add=SYS_PTRACE  --security-opt seccomp=unconfined  -p 8188:8188  -v "$(pwd)"/storage:/root  -e CLI_ARGS="--listen"  yanwk/comfyui-boot:rocm

Для работы с официальным AMD PyTorch-образом можно также использовать базовый подход:

docker pull rocm/pytorch:rocm7.2_ubuntu24.04_py3.12_pytorch_release_2.9.1 docker run -it --rm  --cap-add=SYS_PTRACE --security-opt seccomp=unconfined  --device=/dev/kfd --device=/dev/dri  --group-add video --ipc=host --shm-size 8G  -p 8188:8188  rocm/pytorch:rocm7.2_ubuntu24.04_py3.12_pytorch_release_2.9.1  /bin/bash -c " git clone https://github.com/comfyanonymous/ComfyUI.git &&  pip install -r ComfyUI/requirements.txt &&  python ComfyUI/main.py --listen --port 8188 "

Шаг 4B: Запуск

docker compose up -d docker compose logs -f comfyui-rocm

Интерфейс будет доступен по адресу http://localhost:8188.

Полезные команды для управления контейнером:

Выбор GPU и вычисления

Флаг Описание
–cuda-device ID ID CUDA/HIP-устройства для этого экземпляра
–cuda-malloc Включить cudaMallocAsync (включён по умолчанию для PyTorch 2.0+)
–disable-cuda-malloc Отключить cudaMallocAsync
–cpu Использовать только CPU

Управление VRAM

Флаги из этой группы взаимоисключающие.

Флаг Описание
–gpu-only Всё хранить и запускать на GPU (включая CLIP, text encoders)
–highvram Не выгружать модели в CPU после использования
–normalvram Принудительно использовать нормальный режим VRAM
–lowvram Разбить UNet на части для экономии VRAM
–novram Когда –lowvram недостаточно
–reserve-vram GB Зарезервировать указанное кол-во VRAM (в ГБ) для ОС и других программ
–disable-smart-memory Агрессивно выгружать модели в RAM вместо удержания в VRAM

Запуск моделей

Самый простой запуск моделей – это запуск по шаблонам. Если вы не умеете создавать и соединять ноды, можно просто выбрать вкладку шаблонов.

Вкладка с шаблонами в ComfyUI

Кликнуть на понравившуюся модель и загрузить предлагаемые файлы. А затем раскидать их по папкам.

Всплывающее окно ComfyUI, предлагающее загрузить недостающие компоненты

Для GGUF форматов необходимо скачать расширение ComfyUI-GGUF, которое доступно в самом ComfyUI через менеджер.

Заключение

ComfyUI – один из самых, если не самый, удобный и гибкий инструмент доступный обычному обывателю. Графический интерфейс, наглядная система нодов, удобство запуска, и весьма низкие требования делают его лучшим выбором для новичков, только-только ощупывающих чудный мир генеративных моделей.

Оставь свой комментарий