ComfyUI Linux 安装教程:Ubuntu、WSL2、服务器部署完整步骤
从 NVIDIA 驱动、Python venv、PyTorch CUDA 到启动参数,完整讲清 Linux 上怎么安装 ComfyUI。
一句话结论
Linux 上安装 ComfyUI 不建议照搬 Windows 便携版教程。最稳的方式是:系统准备 NVIDIA 驱动,项目目录使用 Python venv,按 PyTorch 官网命令安装带 CUDA 的 torch,然后启动 python main.py --listen 0.0.0.0 --port 8188。
适合谁
- Ubuntu 22.04/24.04、Debian、Linux Mint、WSL2 或云服务器用户。
- 已经会打开终端,但不想被 Python、CUDA、venv 绕晕的用户。
- 想把 ComfyUI 部署到局域网、工作站或 GPU 服务器上的用户。
版本选择
本文默认以 Ubuntu 22.04/24.04 为例。其他发行版命令名称可能不同,但思路一致:
- 驱动:系统级安装,只要
nvidia-smi能看到显卡即可。 - Python:建议 3.10 或 3.11。
- CUDA Toolkit:通常不用单独安装,PyTorch wheel 自带 CUDA 运行时。
- ComfyUI:用 git clone 拉源码。
- 依赖:装进项目 venv,不污染系统 Python。
Linux 版最关键的是顺序:先确认驱动,再 clone 项目,再创建 venv,最后把 PyTorch 和 ComfyUI 依赖装进这个 venv。不要把 Windows 便携版的 python_embeded 思路搬到 Linux。
第 1 步:确认 NVIDIA 驱动
先执行:
nvidia-smi
正常情况下会看到类似信息:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 550.xx Driver Version: 550.xx CUDA Version: 12.x |
| GPU Name Persistence-M | Bus-Id Disp.A | Memory-Usage |
+-----------------------------------------------------------------------------+
如果提示 command not found,说明系统没有 NVIDIA 驱动工具;如果提示找不到设备,说明驱动或显卡直通有问题。
Ubuntu 桌面用户可以用:
sudo ubuntu-drivers devices
sudo ubuntu-drivers autoinstall
sudo reboot
服务器用户也可以手动安装推荐驱动,例如:
sudo apt update
sudo apt install -y nvidia-driver-550
sudo reboot
重启后必须再次执行 nvidia-smi。不要跳过这一步。ComfyUI 不是靠“安装 CUDA Toolkit”识别显卡,而是先靠驱动让系统识别显卡。
第 2 步:安装系统依赖
Ubuntu/Debian:
sudo apt update
sudo apt install -y git python3 python3-venv python3-pip build-essential libgl1 libglib2.0-0
解释一下这些包:
git:下载 ComfyUI 和自定义节点。python3-venv:创建独立虚拟环境。build-essential:某些插件编译依赖会用到。libgl1、libglib2.0-0:OpenCV、图像处理插件常见依赖。
第 3 步:下载 ComfyUI
建议放在一个固定目录,例如 ~/ai/ComfyUI:
mkdir -p ~/ai
cd ~/ai
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
目录结构应该类似:
ComfyUI/
main.py
requirements.txt
models/
custom_nodes/
如果没有 main.py,说明你不在正确目录。
第 4 步:创建并进入虚拟环境
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip wheel setuptools
终端前面出现 (.venv),说明已经进入虚拟环境。后面所有 pip install 都应该在这个环境里执行。
如果你之后重新打开终端,要先执行:
cd ~/ai/ComfyUI
source .venv/bin/activate
否则依赖会装错地方。
第 5 步:安装 PyTorch GPU 版
先去 PyTorch 官网确认最新安装命令。以 CUDA 12.1 wheel 为例:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
安装后立刻验证:
python - <<'PY'
import torch
print('torch:', torch.__version__)
print('cuda available:', torch.cuda.is_available())
print('gpu:', torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'none')
PY
必须看到:
cuda available: True
如果是 False,先不要继续安装 ComfyUI 插件。先处理 torch 和驱动问题。
第 6 步:安装 ComfyUI 依赖
pip install -r requirements.txt
如果网络慢,可以换镜像,但 PyTorch 的 CUDA wheel 不建议随便换非官方源;普通 Python 包可以使用镜像。
第 7 步:放置模型文件
至少准备一个 Checkpoint。目录如下:
ComfyUI/models/checkpoints/
例如:
~/ai/ComfyUI/models/checkpoints/v1-5-pruned-emaonly.safetensors
常见模型目录:
| 模型类型 | Linux 路径 |
|---|---|
| Checkpoint | ~/ai/ComfyUI/models/checkpoints/ |
| LoRA | ~/ai/ComfyUI/models/loras/ |
| VAE | ~/ai/ComfyUI/models/vae/ |
| ControlNet | ~/ai/ComfyUI/models/controlnet/ |
| CLIP Vision | ~/ai/ComfyUI/models/clip_vision/ |
| Upscale Model | ~/ai/ComfyUI/models/upscale_models/ |
Linux 路径区分大小写,checkpoints 和 Checkpoints 不是一个目录。
第 8 步:启动 ComfyUI
本机使用:
python main.py --port 8188
局域网或服务器访问:
python main.py --listen 0.0.0.0 --port 8188
看到这行说明服务起来了:
To see the GUI go to: http://127.0.0.1:8188
本机浏览器打开:
http://127.0.0.1:8188
服务器部署时,在你电脑浏览器打开:
http://服务器IP:8188
如果云服务器打不开,检查安全组和防火墙,而不是反复重装 ComfyUI。
第 9 步:常用启动参数
| 场景 | 启动参数 |
|---|---|
| 指定端口 | --port 8190 |
| 局域网访问 | --listen 0.0.0.0 |
| 低显存 | --lowvram |
| 中等显存优化 | --normalvram |
| CPU 测试 | --cpu |
| 指定输出目录 | --output-directory /path/to/output |
组合示例:
python main.py --listen 0.0.0.0 --port 8188 --normalvram
WSL2 特别说明
WSL2 用户要在 Windows 里安装支持 WSL 的 NVIDIA 驱动,然后在 WSL 里执行:
nvidia-smi
如果 WSL 内看不到显卡,先修 WSL GPU,不要在 WSL 里乱装 Linux 驱动。WSL 的 GPU 能力来自 Windows 驱动透传。
WSL 中访问方式通常是:
- Windows 浏览器访问
http://127.0.0.1:8188 - 如果不通,再尝试
python main.py --listen 0.0.0.0 --port 8188
模型文件如果放在 /mnt/c/Users/... 会比较慢,建议放在 WSL Linux 文件系统里,例如 ~/ai/ComfyUI/models。
systemd 后台运行示例
如果你是服务器,希望开机自动启动,可以创建服务:
sudo nano /etc/systemd/system/comfyui.service
内容示例,把 USER 改成你的用户名:
[Unit]
Description=ComfyUI
After=network.target
[Service]
Type=simple
User=USER
WorkingDirectory=/home/USER/ai/ComfyUI
ExecStart=/home/USER/ai/ComfyUI/.venv/bin/python main.py --listen 0.0.0.0 --port 8188
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
启用:
sudo systemctl daemon-reload
sudo systemctl enable --now comfyui
sudo systemctl status comfyui
查看日志:
journalctl -u comfyui -f
常见错误
torch.cuda.is_available() 是 False
原因通常是装了 CPU 版 torch,或者驱动太旧。先执行:
python -c "import torch; print(torch.__version__, torch.cuda.is_available())"
nvidia-smi
如果 torch 是 +cpu,重装 CUDA 版 torch。
ImportError: libGL.so.1
安装系统库:
sudo apt install -y libgl1
端口 8188 打不开
检查服务是否启动:
ss -lntp | grep 8188
如果没有输出,说明 ComfyUI 没在监听。回到启动终端看报错。
服务器能启动,但外网访问不了
检查:
- 启动时是否加了
--listen 0.0.0.0 - 云服务器安全组是否放行 8188
- 本机防火墙是否拦截
安装插件后启动失败
先把刚安装的插件移走:
mkdir -p ~/ai/disabled_nodes
mv ~/ai/ComfyUI/custom_nodes/插件目录 ~/ai/disabled_nodes/
能启动后再处理依赖,不要直接删除整个 ComfyUI。
验证是否成功
完成后你应该能同时满足:
nvidia-smi能看到显卡。python -c "import torch; print(torch.cuda.is_available())"输出True。python main.py --port 8188不报错。- 浏览器能打开 ComfyUI。
- Load Checkpoint 能看到模型。
- Queue Prompt 能生成图片。
下一步推荐
- Windows 用户看
/guides/comfyui-windows-install/。 - 模型不知道放哪,看
/guides/model-file-paths/。 - 第一次出图,看
/guides/first-image-generation/。 - 显存报错,看
/guides/cuda-out-of-memory/。