波波技术栈
article

ComfyUI 云端安装教程

面向Linux GPU云服务器(AutoDL、恒源云、阿里云等)的ComfyUI部署指南。涵盖GitHub镜像安装、登录插件配置、安全组端口放行、Flux模型下载与工作流跑通,以及API认证(Token/Cookie)与远程调用流程。提供完整命令与路径示例,帮助用户在云端快速搭建可公网访问的ComfyUI环境。

面向 **Linux GPU 云服务器**(AutoDL、恒源云、阿里云 GPU 等)。通过公网访问 ComfyUI 网页,或使用 **HTTP API** 由脚本/其他程序远程提交工作流。

| 项目 | 云端示例路径 |
|------|----------------|
| ComfyUI 目录 | `/root/ComfyUI` |
| 模型目录 | `/root/ComfyUI/models/checkpoints` |
| 自定义节点 | `/root/ComfyUI/custom_nodes` |
| 输出目录 | `/root/ComfyUI/output` |
| 忘记登录密码 | 删除 `/root/ComfyUI/login/PASSWORD` 后重启 |
| 访问地址 | `http://<公网IP>:<端口>`(如 `8188`、`6889`) |

---

## 1. 安装 ComfyUI

```bash
cd /root
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip3 install -r requirements.txt

GitHub 较慢时可用镜像:

cd /root
git clone https://ghproxy.net/https://github.com/comfyanonymous/ComfyUI.git ComfyUI
cd ComfyUI && pip3 install -r requirements.txt

2. 登录插件(ComfyUI-Login)

插件必须装在 ComfyUI/custom_nodes/ 下。

cd /root/ComfyUI/custom_nodes
git clone https://github.com/liusida/ComfyUI-Login.git
cd ComfyUI-Login
pip3 install -r requirements.txt

镜像:

cd /root/ComfyUI/custom_nodes
git clone https://ghproxy.net/https://github.com/liusida/ComfyUI-Login.git ComfyUI-Login
cd ComfyUI-Login && pip3 install -r requirements.txt

首次登录

  1. 浏览器打开:http://<公网IP>:<端口>/login
  2. 自行设置用户名和密码(无默认账号)
  3. 忘记密码:删除 /root/ComfyUI/login/PASSWORD,重启 ComfyUI 再设

启动成功后,SSH 终端或日志中会出现:

For direct API calls, use token=$2b$12$...

请保存该 token,供 API 调用或第三方客户端使用。


3. 启动与安全组

参数 说明
--listen 0.0.0.0 允许公网访问(云端必须)
--port 8188 端口,可按平台映射改为其他端口
--cuda-device 0 指定 GPU(多卡时)

前台启动:

cd /root/ComfyUI
python3 main.py --listen 0.0.0.0 --port 8188

后台运行:

cd /root/ComfyUI
nohup python3 main.py --listen 0.0.0.0 --port 8188 > comfyui.log 2>&1 &
tail -f comfyui.log

务必在云平台「安全组 / 防火墙」放行对应 TCP 端口,否则浏览器与 API 客户端均无法连接。


4. 安装示例模型(Flux1 Schnell FP8)

以下以文生图常用模型为例;其他工作流请按各自文档下载对应模型到相应子目录。

文件名:flux1-schnell-fp8.safetensors(约 17GB) 位置:/root/ComfyUI/models/checkpoints/

mkdir -p /root/ComfyUI/models/checkpoints
cd /root/ComfyUI/models/checkpoints

wget -c https://hf-mirror.com/Comfy-Org/flux1-schnell/resolve/main/flux1-schnell-fp8.safetensors

ls -lh flux1-schnell-fp8.safetensors

确认大小约 17GB,不是几 KB 的空文件。


5. 跑通官方 Flux 示例

  1. 重启 ComfyUI(装 Login、下完模型后必须重启)
  2. 浏览器登录后进主界面
  3. 加载工作流:WorkflowsFlux Schnell,或见 官方文档
  4. Load Checkpointflux1-schnell-fp8.safetensors
  5. Queue Prompt 执行工作流

输出在 /root/ComfyUI/output/。Schnell 保持示例约 4 步euler + simple,勿随意改成 20 步以免极慢或 OOM。


6. 自定义节点与工作流

按业务需要安装 custom_nodes(如视频、对口型、ControlNet 等),安装后重启 ComfyUI。 各插件的模型、依赖与工作流格式以该插件官方说明为准。


7. API 工作流导出与认证

7.1 导出 API 工作流 JSON

  1. 工作流在界面里跑通
  2. 菜单 Save (API Format)(不是普通 Save)
  3. 保存到如 /root/ComfyUI/workflows/my_api.json
  • 正确: 顶层为 "3""6" 等节点 ID,含 class_typeinputs
  • 错误:nodeslinks 的界面 JSON(仅界面用,不能直接 POST /prompt

7.2 Token(推荐,脚本 / 程序调用)

从启动日志复制:

For direct API calls, use token=$2b$12$...

调用时填写:

  • 服务地址: http://<公网IP>:<端口>(无末尾斜杠)
  • 认证: 上述 token 整段(JSON 字段 token 或请求头 Authorization: Bearer

curl 测试:

curl -X POST "http://127.0.0.1:8188/prompt" \
  -H "Content-Type: application/json" \
  -d '{"prompt":{},"client_id":"test","token":"你的token"}'

远程测试把 127.0.0.1 换成 公网 IP

7.3 Cookie(浏览器备用)

在已登录 ComfyUI 的浏览器:F12 → Cookie → AIOHTTP_SESSION,复制 Value(通常以 gAAAA 开头)。

Cookie: AIOHTTP_SESSION=你复制的Value
认证方式 来源 用法
Token 启动日志$2b$... JSON 字段token 或头 Authorization: Bearer
Cookie 浏览器AIOHTTP_SESSION 请求头Cookie:

7.4 常用 API 流程简述

  1. POST /prompt 提交 API Format 工作流,获得 prompt_id
  2. GET /history/{prompt_id} 轮询直至 outputs 出现
  3. GET /viewfilenamesubfoldertype 下载图片或视频

具体字段以 ComfyUI 官方 API 说明 为准。


附:本机 Windows 调试(可选)

仅本地开发时可在 Windows 安装 ComfyUI,使用 --listen 127.0.0.1 --port 8188,一般不必对公网开放。生产或远程调用建议使用云端 GPU + 公网地址与 API,流程与上文一致。