SD:在一个 Ubuntu 系统安装 stable diffusion ComfyUI

目录

  • [1. 环境准备](#1. 环境准备)
  • [2. git仓库](#2. git仓库)
  • [3. 配置 WebUI 的模型路径](#3. 配置 WebUI 的模型路径)
  • 4.启动软件
  • [5. 插件安装](#5. 插件安装)
    • [5.1 管理插件的插件 ComfyUI-Manager](#5.1 管理插件的插件 ComfyUI-Manager)
    • [5.2 安装其他插件](#5.2 安装其他插件)
      • [5.2.1 安装举例](#5.2.1 安装举例)
  • [6. 关于位置](#6. 关于位置)
    • [6.1 模型位置](#6.1 模型位置)
    • [6.2 工作流保存位置](#6.2 工作流保存位置)
    • [6.3 生成结果的位置](#6.3 生成结果的位置)
  • [7. 简单使用](#7. 简单使用)
    • [7.1 文生图为例](#7.1 文生图为例)
    • [7.2 图生视频](#7.2 图生视频)
  • [附录1 - 关于模型下载](#附录1 - 关于模型下载)

1. 环境准备

  • 个人系统
    查看系统信息(方便向AI提问)
powershell 复制代码
cat /etc/os-release
  • 新建 python 环境
    • 创建新环境
    • 激活环境
powershell 复制代码
python3 -m venv ~/venv_sd_comfy
source ~/venv_sd_comfy/bin/activate
  • 注:关于使用 系统自带 python 还是 conda 来安装环境
    之前我安装WebUI 已经占了一个 Conda 环境,ComfyUI 强烈建议「另起炉灶」------用系统自带的 Python 3.12 单独建 venv,而不是再开一个 Conda 环境。原因有三:
  1. 隔离最干净
    WebUI 的 Conda 环境里可能装了一堆它自己改动的包(xformers、gradio 老版本等),ComfyUI 并不需要,混用反而容易版本冲突。系统 venv 与 Conda 完全隔离,升级/回滚互不影响。
  2. 省内存 + 省磁盘
    Conda 每新建一个环境都会再复制一份基础库,动辄 2-3 GB;Python 自带 venv 只做符号链接,几十 MB 搞定。推理时两个进程各自驻留显存即可,不会因为「同门」就节省。
  3. 官方仓库就是按「系统 Python + venv」测试的
    ComfyUI 的 requirements.txt 里很多 wheel 只有 cp312 版本,Conda 的 python 3.10/3.11 反而要多编译,速度慢且容易踩坑。
    一句话结论
    「ComfyUI 用系统 Python 建 venv」→ 最省心、最省资源,后期维护也简单。
  • python包
powershell 复制代码
pip install --upgrade pip
pip install torch torchvision torchaudio \
            --extra-index-url https://download.pytorch.org/whl/cu121

2. git仓库

我将其安装在本地的 ~/programs 下面(这个路径自选)

powershell 复制代码
cd ~/programs
git clone https://github.com/comfyanonymous/ComfyUI.git
  • 如果提示找不到这个url
powershell 复制代码
git clone --depth 1 \
  --config http.postBuffer=524288000 \
  https://github.com/comfyanonymous/ComfyUI.git
  • 安装依赖的python包
powershell 复制代码
cd ComfyUI
pip install -r requirements.txt

3. 配置 WebUI 的模型路径

  • 创建文件 extra_model_paths.yaml
powershell 复制代码
cp extra_model_paths.yaml.example extra_model_paths.yaml
  • 修改文件内容如下:

    a111:
    base_path: /home/xxx/programs/stable-diffusion-webui/

    复制代码
    checkpoints: models/Stable-diffusion
    vae: models/VAE
    loras: |
           models/Lora
           models/LyCORIS
    clip_vision: models/clip_vision
    gligen: models/GLIGEN
    controlnet: models/ControlNet
    controlnet_preprocessors: models/ControlNet
    ipadapter: models/IpAdapter
    instantid: models/InstantID
    upscale_models: models/ESRGAN
    embeddings: embeddings
    hypernetworks: models/hypernetworks

注:

base_path 必须是绝对路径,~ 不会展开。

缩进只能空格,YAML 对 Tab 零容忍。

如果想再加自己独立目录,继续往下加同级字段即可,ComfyUI 会合并读取。

4.启动软件

  • 新建启动脚本 0_launch.sh(在 ComfyUI 根目录下),内容如下:
powershell 复制代码
source ~/venv_sd_comfy/bin/activate
exec python main.py "$@"
  • 添加可执行权限
powershell 复制代码
chmod +x 0_launch.sh
  • 启动

    • 普通启动
      ./0_launch.sh
    • 低显存启动
      ./0_launch.sh --lowvram --fp8_e4m3fn-unet --fp8_e5m2-text-enc
  • 进入前端

    在浏览器打开 http://127.0.0.1:8188 即可

5. 插件安装

先退出后台进程(ctrl+c)

位置:ComfyUI/custom_nodes/ 文件夹下

cd 到该位置下进行操作 !!!

5.1 管理插件的插件 ComfyUI-Manager

powershell 复制代码
git clone https://github.com/ltdrdata/ComfyUI-Manager.git

# 先激活你之前建的 venv
source ~/venv_sd_comfy/bin/activate
# 装它自己的依赖
python -m pip install -r ComfyUI-Manager/requirements.txt

重启 ComfyUI 后可以看到:

5.2 安装其他插件

5.2.1 安装举例

  • 在上一个窗口中,选择 Custom Nodes Manager 即可进入插件列表,通过搜索、install 即可导入。
  • 下载完需要重启

6. 关于位置

6.1 模型位置

模型类型 放到(ComfyUI 根目录) 若共用 WebUI 则放到
主模型 ckpt/safetensors models/checkpoints/ models/Stable-diffusion/
LoRA models/loras/ models/Lora/
VAE models/vae/ models/VAE/
ControlNet models/controlnet/ models/ControlNet/
CLIP Vision models/clip_vision/ models/clip_vision/
Textual Inversion models/embeddings/ embeddings/

6.2 工作流保存位置

ComfyUI/user/default/workflows

6.3 生成结果的位置

ComfyUI/output/

7. 简单使用

7.1 文生图为例

  • step1: 在模版中找到第一个文生图工作流
  • step2: 修改相关参数
  • step3: 运行
  • step4: 可以进行 重命名、保存这个工作流 等操作

7.2 图生视频

再试一下图生视频工作流。这里由于显存限制,将 wan2.2_i2v_low_noise_14B_fp8_scaled.safetensors 换成:

wan2.1_t2v_1.3B_fp16.safetensors

  • 结果
    这里仅简单尝试,图片较小 640×640

附录1 - 关于模型下载

相关推荐
chicheese44 分钟前
Linux 面试速查表:从初级到高级,附高频场景答题模板
linux·运维
Linux-lucky1 小时前
32-38-Linux学习之旅之MySQL综合
linux·运维·学习·mysql·ubuntu
AIGC小尼1 小时前
本地AI漫剧部署|低配8G显存实战部署MiniMax-H3|4步极速采样+低显存优化完整方案(可角色替换/视频魔改)
人工智能·stable diffusion·comfyui·ai漫剧
vortex52 小时前
常用终端模拟器全面对比:Kitty、WezTerm、Ghostty 与 Konsole
linux
INGNIGHT3 小时前
270 · 电话号码的字母组合II(Trie)
linux·算法
zly35003 小时前
VMware Converter Standalone 物理机转化为虚拟机后源1硬盘变成了2个硬盘(2个硬盘文件)虚拟机无法启动。
linux·运维·服务器
GeW5 小时前
从内核到数据:Linux与工业数据库如何支撑高端制造
linux
小小的木头人6 小时前
Linux systemd Service 与 Timer 定时任务原理及实战
linux
熊明才7 小时前
WSL2 网络突然瘫痪(Network is unreachable / 没有 eth0)最短修复指南(2026年9月20日亲测可用)
linux·windows·wsl2
Tairitsu_H7 小时前
[Linux系统] 自动化构建make / Makefile | 进度条
linux·操作系统·makefile·make