Linux下部署ComfyUI
环境准备
你需要准备一个Linux服务器,并且安装了git和Python环境,建议 Python 使用 3.1x - 3.12.x 版本,我这边使用的是Python 3.12.11。
至于怎么安装就不提了,网上教程很多,这里主要说一下怎么部署 ComfyUI。
克隆仓库
官方文档有教程: https://comfyui-wiki.com/zh/install/install-comfyui/install-comfyui-on-linux
先去 Github 把仓库克隆下来:
1 | git clone https://github.com/Comfy-Org/ComfyUI.git |
注意,如果你是国内线路,没法直接访问 github,那你可以尝试使用代理访问,或者使用在线加速代理,比如: https://gh-proxy.com/
1 | git clone https://gh-proxy.org/https://github.com/Comfy-Org/ComfyUI.git |
安装依赖
仓库克隆下来后进入仓库目录,先进入虚拟环境,然后安装依赖:
1 | cd ComfyUI # 进入仓库目录 |
创建并激活虚拟环境后,你的终端前面应该带有(venv)字样,表示你已经进入了虚拟环境。
1 | (venv) root@localhost:~/ComfyUI# |
启动服务
1 | python main.py |
不过在启动之前,你可以选择添加一些启动参数,如下:
| 参数分类 | 启动参数 (Argument) | 示例 (Example) | 详细说明 (Description) | 适用场景 |
|---|---|---|---|---|
| 网络与服务 | –listen | –listen | 监听所有网络接口 (0.0.0.0)。允许局域网内的其他设备(手机、iPad、其他电脑)访问你的 ComfyUI。,局域网远程操作时必填。 | 局域网远程操作时必填。 |
| –port | –port 8189 | 指定服务端口。默认是 8188。 | 端口冲突,或同时开启多个 ComfyUI 实例时。 | 端口冲突,或同时开启多个 ComfyUI 实例时。 |
| –auto-launch | –auto-launch | 自动打开浏览器。服务启动成功后,自动在默认浏览器中打开 Web 界面。 | 懒人必备,省去手动输网址。 | 懒人必备,省去手动输网址。 |
| –enable-cors-header | –enable-cors-header | 允许跨域资源共享 (CORS)。添加 Access-Control-Allow-Origin: * 头。 | 开发者调试,或将 ComfyUI 作为后端 API 给其他前端调用时。 | 开发者调试,或将 ComfyUI 作为后端 API 给其他前端调用时。 |
| –tls-keyfile | –tls-keyfile key.pem | 启用 HTTPS 加密访问。需指定密钥和证书路径。 | 在不安全的网络环境中使用时增加安全性。 | 在不安全的网络环境中使用时增加安全性。 |
| –tls-certfile | –tls-certfile cert.pem | 启用 HTTPS 加密访问。需指定密钥和证书路径。 | 在不安全的网络环境中使用时增加安全性。 | 在不安全的网络环境中使用时增加安全性。 |
| –lowvram | –lowvram | 低显存模式。强制将模型分块加载,用时间换空间。 | 显存小于 4GB-6GB,或频繁爆显存时。 | 显存小于 4GB-6GB,或频繁爆显存时。 |
| –medvram | –medvram | 中等显存模式。在速度和显存占用之间平衡。 | 显存 6GB-8GB,既想省点显存又不想太慢。 | 显存 6GB-8GB,既想省点显存又不想太慢。 |
| –force-fp16 | –force-fp16 | 强制半精度。强制模型以 FP16 运行。 | 部分显卡(如 16系列)默认 FP32 导致 OOM,或为了稍微提升速度。 | 部分显卡(如 16系列)默认 FP32 导致 OOM,或为了稍微提升速度。 |
| –cpu | –cpu | 仅 CPU 模式。不使用 GPU。 | 没有 N 卡,或者用来测试节点逻辑(速度极慢)。 | 没有 N 卡,或者用来测试节点逻辑(速度极慢)。 |
| –output-directory | –output-directory D:\AI_Output | 自定义输出路径。修改图片生成的默认保存文件夹。 | 想把图存到机械硬盘或 NAS 上。 | 想把图存到机械硬盘或 NAS 上。 |
| –input-directory | –input-directory D:\AI_Input | 自定义输入路径。修改“Load Image”节点的默认读取文件夹。 | 方便读取统一图库。 | 方便读取统一图库。 |
| –extra-model-paths-config | –extra-model-paths-config my_paths.yaml | 加载额外的模型路径配置。 | 与 SD WebUI 共用大模型(Checkpoints)时核心参数。 | 与 SD WebUI 共用大模型(Checkpoints)时核心参数。 |
| –preview-method | –preview-method fast | “设置采样预览方式。可选:auto, fast, smart, none。” | none 可微弱提升速度;fast 提供低延迟预览。 | none 可微弱提升速度;fast 提供低延迟预览。 |
| –dont-print-server | –dont-print-server | 静默模式。不在控制台打印服务器日志。 | 想要保持终端干净时。 | 想要保持终端干净时。 |
举个例子,我启动服务后需要监听所有网络接口,并且指定服务端口为 8189,那么我就可以这样启动:
1 | python main.py --listen --port 8189 |
启动成功后,你可以在浏览器中访问http://localhost:8189来访问 ComfyUI 的 Web 界面。
坑点注意
对于ComfyUI来说,ComfyUI-Manager是必不可少的,它可以帮助你管理,安装,卸载依赖等,但是通过官方的--enable-manager参数启动的ComfyUI-Manager不太可靠.
我在使用期间经常会出现安装依赖时卡死,依赖下载不下来等问题,我的建议是放弃官方提供的这个启动参数,转而自己手动安装该插件!
本站里面提供了详细的安装思路,可以找一下,在 ComfyUI 分类中,有一篇文章是关于 ComfyUI-Manager 的安装的,可以参考一下.