Инструкция по установке и запуску Comfy UI на Linux
Что такое ComfyUI
Принцип работы
Способ 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
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
Выберите вариант в зависимости от вашей видеокарты.
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
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
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
Перелогиньтесь для применения группы
Шаг 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
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
Для 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
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
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
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.
Полезные команды для управления контейнером:
| Флаг | Описание |
|---|---|
| --cuda-device ID | ID CUDA/HIP-устройства для этого экземпляра |
| --cuda-malloc | Включить cudaMallocAsync (включён по умолчанию для PyTorch 2.0+) |
| --disable-cuda-malloc | Отключить cudaMallocAsync |
| --cpu | Использовать только CPU |
Флаги из этой группы взаимоисключающие.
| Флаг | Описание |
|---|---|
| --gpu-only | Всё хранить и запускать на GPU (включая CLIP, text encoders) |
| --highvram | Не выгружать модели в CPU после использования |
| --normalvram | Принудительно использовать нормальный режим VRAM |
| --lowvram | Разбить UNet на части для экономии VRAM |
| --novram | Когда --lowvram недостаточно |
| --reserve-vram GB | Зарезервировать указанное кол-во VRAM (в ГБ) для ОС и других программ |
| --disable-smart-memory | Агрессивно выгружать модели в RAM вместо удержания в VRAM |
Запуск моделей

