为ComfyUI项目发布线上服务

更新时间:
复制为 MD 格式

在项目开发阶段完成模型、插件和依赖的安装后,可通过发布功能将当前生图环境制作成快照并部署到线上服务。发布后,在项目开发阶段对插件和依赖的调整不会影响已发布的线上服务。

功能介绍

为保障线上服务稳定可靠,项目开发环境与线上服务环境相互隔离。可在开发环境中调试和迭代 ComfyUI 生图环境,待该环境能稳定运行预期的工作流后,通过发布将确定的生图环境版本部署到线上服务。

ComfyUI生图环境

组成

说明

模型

工作流所需的各类模型(Checkpoint、LoRA、ControlNet 等)

位于models目录下

插件

社区或自研的自定义节点(Custom Nodes)

位于custom_nodes目录下

依赖

ComfyUI 主程序及各插件的 Python 依赖包

缓存

工作流运行所需的辅助模型、数据集等

通常位于.cache目录下

项目开发与线上服务分别维护可变不可变的生图环境,通过隔离保证线上 API 调用的稳定性。每次发布时,平台会将当前项目开发的生图环境制作成快照,并用该快照更新线上服务。

发布流程概览

阶段

说明

1. 快照制作

将项目开发环境中的插件、依赖和必要缓存打包拷贝,生成快照并存储于 snapshots目录。模型(models)不包含在快照中,线上服务项目开发环境共享同一份模型存储。

生图环境越复杂(插件和依赖越多),快照制作所需的时间越长。

2. 服务部署

快照完成后,平台自动更新线上服务的函数配置并触发平滑轮转:启动加载新快照的新实例,新实例健康检查通过后销毁旧实例。显示发布成功即表示函数配置已更新,实例轮转已开始。


操作指南

准备工作

项目开发中使用工作站完成生图环境调试,确保模型、插件、依赖、缓存能正常运行工作流。详见:创建ComfyUI项目快速入门

说明:若发布前已完成调试,建议先保存并关闭工作站,再发起发布,以避免发布等待期间产生不必要的工作站计费。

步骤 1:发布线上服务并查看发布记录

  1. 进入项目详情页(在控制台点击项目,再点击目标 ComfyUI 项目)。

  2. 在项目详情页右侧点击发布线上服务按钮。
    首次发布时,平台会引导完成线上服务的资源规格与弹性策略配置;后续发布将默认复用线上服务 > 配置管理中的配置。

  3. 发起发布后,在线上服务 > 发布记录页面可查看当前发布任务的详细进度。

说明:同一时间仅允许一个发布任务处于发布中状态。如需发起新发布,请等待当前任务完成后再操作。

步骤 2:观察实例状态

当发布记录显示发布成功后,线上服务的实例轮转正式开始。可通过以下方式观察轮转情况:

入口

观察内容

线上服务 > 服务概览

实际最小实例数的变化

线上服务 > 实例列表 > 推理实例

各实例的运行周期,判断新旧实例替换情况

说明:实例轮转速度主要取决于生图环境的启动时间。若工作站启动时间较长(例如存在加载较久的 ComfyUI 插件),每次发布的轮转耗时也会增加。