El pod solo sirve ComfyUI + Manager + la UI del panel del agente. El
cerebro del agente (el orquestador del panel) se ejecuta
en local en tu máquina con tu propia suscripción — así que un pod en la
nube nunca quema horas de GPU en el LLM, y ninguna clave API ni inicio de
sesión del agente toca nunca la caja. Consulta
Topología.
Plantilla de un clic (el camino más rápido)
La imagen preconstruida arranca lista para ser controlada por el panel del agente — ComfyUI + Agent Panel + ComfyUI-Manager v2 van horneados, sin configuración:- Pulsa Deploy on RunPod y elige una GPU (una RTX 5090 / cualquier tarjeta Blackwell o Ada funciona — la imagen entrega torch cu128).
- Conserva los valores por defecto de la plantilla: puerto HTTP 3000
expuesto y un volumen de red montado en
/workspace. - Espera a que el pod arranque. Una página «ComfyUI is starting…» que se refresca sola sirve hasta que está listo (~30–60 s de init de ComfyUI).
Despliégalo y contrólalo desde el panel del agente (v0.44+)
Desde comfyui-mcp 0.44, no tienes que tocar la consola de RunPod ni ejecutar un comando CLI — el panel del agente tiene un panel de control de RunPod que despliega, conecta, supervisa y detiene un pod por ti, y la misma hoja de control se entrega en la app móvil.- Define tu clave una vez. En la tarjeta Claves API del panel,
pega tu
RUNPOD_API_KEY. Se guarda en el servidor en~/.comfyui-mcp/.env— nunca en el navegador. - Abre el panel de control de RunPod desde la píldora de host en la barra de herramientas del panel (al principio lee 🟢 Local · tu equipo).
- Despliega o conecta. Pulsa Desplegar para un pod de un toque (pasa por el enlace de despliegue de la plantilla y se repliega entre tipos de GPU / COMMUNITY→SECURE cuando la capacidad está justa), o elige un pod existente por nombre en el desplegable y Conectar.
- Míralo en vivo. La tarjeta de estado muestra GPU / VRAM / tiempo activo / /h — así que dónde se ejecuta un render nunca es ambiguo. El agente instala tus nodos personalizados + LoRAs y descarga tus modelos en el pod, para que tengas paridad exacta del lienzo con tu equipo local.
- Vuelve a local y detén. Usar local retargetea el render a tu
propio equipo al instante; Detener apaga el pod. La parada
automática por inactividad (
RUNPOD_IDLE_STOP_MINUTES, 15 por defecto; solo cuenta mientras estás renderizando de verdad en el pod) es el tope de coste si te olvidas.
/workspace sobrevive) tras un periodo
de gracia (45 min después del arranque sin latido, luego 20 min entre
latidos; RUNPOD_DEADMAN_BOOT_GRACE_S /
RUNPOD_DEADMAN_BEAT_GRACE_S). «Cuidar» sobrevive a Usar local y
Dejar de vigilar — esos solo cambian lo que muestra la UI; el
watchdog dispara solo cuando comfyui-mcp mismo ha desaparecido (o el pod
sale). El watchdog detiene el pod con la clave API de alcance de pod
que RunPod inyecta automáticamente en cada pod — tu clave de cuenta
nunca sale de tu máquina, y no hay nada de lo que optar a salir en
materia de credenciales. Déjalo desarmado con deadman:false en
runpod / action: "create" (o RUNPOD_DEADMAN=0), o
DEADMAN_DISABLE=1 como env del pod. Los pods desplegados desde la
consola nunca llevan el token de latido, y los despliegues de plantilla
personalizada (RUNPOD_TEMPLATE_ID) lo dejan apagado por defecto —
pasa deadman:true solo si esa imagen entrega nuestro watchdog.
¿Nuevo en alquilar GPUs para ComfyUI? El blog recorre todo el flujo de
punta a punta:
Ejecuta ComfyUI en una GPU alquilada en la nube.
Conectar desde tu máquina
Cuando el pod está arriba, coge su URL de proxy pública (RunPod → tu pod → el endpoint HTTP :3000, p. ej.https://<pod-id>-3000.proxy.runpod.net) y ejecuta un comando en tu
portátil:
connect abre automáticamente un túnel
cifrado seguro wss:// (vía Cloudflare) hacia el puente del agente en
tu máquina y le entrega esa URL al panel del pod por ti — así que la
página HTTPS del pod alcanza al agente con ningún aviso del navegador,
nada que copiar, en cualquier navegador. Para un ComfyUI local usa
el puente loopback ws://127.0.0.1:9180 en claro. En ambos casos el
agente — y tu inicio de sesión de Claude/ChatGPT — se ejecuta solo en
tu máquina; en el pod no se instala nada.
Para terminar, con connect todavía en marcha en tu propia máquina, abre
el ComfyUI del pod en el navegador, abre la barra lateral Agente y
pulsa Conectar.
Ahora controla el grafo en lenguaje natural.
¿Por qué un túnel? Una página de pod se sirve por
https://, y los
navegadores bloquean que una página segura abra un socket ws://
inseguro hacia tu máquina (contenido mixto / Private Network Access). El
túnel le da al puente una URL wss:// con TLS válido — filtrada por un
token aleatorio por sesión — para que funcione en todas partes sin aviso.Si el pod está detrás de autenticación, define
COMFYUI_AUTH_TOKEN (más
opcionales COMFYUI_AUTH_HEADER / COMFYUI_AUTH_SCHEME) en el comando
connect local. Para un pod delante de Cloudflare Access, crea un
token de servicio de Access y define CF_ACCESS_CLIENT_ID +
CF_ACCESS_CLIENT_SECRET — ambos viajan en cada petición a ComfyUI
(HTTP + el WebSocket del vigilante de cola), así que el conector pasa la
puerta mientras la página de inicio de sesión humana se queda arriba para
los navegadores.Quédate todo en tu máquina (sin Cloudflare)
¿Prefieres no enrutar el puente por Cloudflare? Alcanza el pod a través de tu propio reenvío de puertos SSH para que la página sea un origen loopback (ws:// en claro funciona, sin túnel):
--insecure-bridge (entonces organizas tu propio camino para que la
página del pod alcance ws://127.0.0.1:9180).
¿Quieres una alternativa autoalojada y estable al túnel rápido de
Cloudflare por defecto — tu propio dominio, sin nombre de host efímero,
propiedad completa de ese salto — en lugar de cualquiera de los de
arriba? Consulta Relé autoalojado.
Topología: dónde se ejecuta el agente
Qué persiste (y qué no)
La imagen está optimizada para un parada/arranque rápido. El software pesado — ComfyUI, su venv, Manager v2 — está horneado en la imagen inmutable y se ejecuta desde/opt/ComfyUI, mientras que custom_nodes
vive en el volumen /workspace (enlace simbólico) para que tus
instalaciones persistan. Un rearranque en caliente no hace ninguna
instalación/sync/semilla completa y solo relanza ComfyUI.
Los nodos personalizados instalados en tiempo de ejecución sobreviven a
un rearranque.
custom_nodes está enlazado simbólicamente a
/workspace/custom_nodes; en cada arranque los nodos horneados de la
imagen (panel del agente + builtins) se siembran/refrescan en él (así
que una actualización de imagen entrega un panel actual mientras se
conservan tus propios nodos), y las dependencias Python de cada nodo se
reinstalan en el venv desde una caché pip persistente en el volumen —
rápido después de la primera vez. Los modelos también persisten. Para
hornear un nodo de modo que no necesite trabajo al arrancar, añádelo al
Dockerfile y reconstruye la imagen (abajo).Construye y despliega tu propia imagen
La plantilla de un clic es la imagen preconstruida. Una imagen preconstruida ligera — el mismo ComfyUI + panel del agente + Manager, pero sin los extras donantes opcionales (runpod-uploader/croc/app-manager) ni el checkpoint SDXL de
spotcheck horneado, construida de forma continua en CI — también es
pública en
ghcr.io/artokun/comfyui-mcp-runpod:cu128-lean
si solo quieres apuntar una plantilla de RunPod a algo sin construir nada
tú mismo.
Para personalizarla — fijar versiones, hornear nodos personalizados extra,
cambiar la disposición de modelos — construye y sube la tuya desde
docker/runpod/:
/workspace.
El docker/runpod/README.md
es la referencia completa de construcción — el Dockerfile multi-etapa, los
flags exactos de lanzamiento de ComfyUI, el mapeo de volumen
extra_model_paths.yaml, la puerta de instalación remota de Manager, las
variables de entorno y los compromisos de tamaño/pin.
Otros destinos en la nube
El flujoconnect no es específico de RunPod — funciona contra
cualquier ComfyUI alcanzable que sirva el panel del agente (otro host
en la nube, un VPS, una caja en tu LAN). Apunta connect a su URL y
voltea el conmutador de orquestador externo: