Skip to content

πŸ“˜ Tutorial run-comfyui-image

  • This tutorial reflects my own workflow and experience on RunPod.io.
  • Always consult the excellent official runpod.io documentation.

πŸš€ Starting a Pod

🧩 Choose a Template

t2v template

Example:

Steps:

  1. Choose a GPU
  2. Edit template settings if needed.
  3. Enable volume encryption if desired.
  4. Click Deploy On-Demand.

πŸ“œ Viewing System Logs

deployment start

  • Go to Logs.
  • Loading takes 9–15 minutes depending on region/GPU.
  • If the image doesn’t begin downloading in 1 minute, delete and redeploy in another region.

Ends with:

Digest: sha256:2b56bdd14df7af0dae7f9bd7978be9e61d791359f5ea65eedd65dcd2e16752fc
Status: Image is up to date for ls250824/run-comfyui-wan:19112025

🐳 Viewing Container Logs

ℹ️ Pod run-comfyui-wan started
ℹ️ Wait until the message πŸŽ‰ Provisioning done, ready to create AI content πŸŽ‰

When you see:

πŸŽ‰ Provisioning done, ready to create AI content πŸŽ‰

β†’ Your pod is ready.

πŸ”Œ Connecting to Your Pod

Docs

Possible http services

🎨 ComfyUI

  1. Select tab Connect β†’ ComfyUI
  2. Set username/password
  3. Load a workflow
  4. Press Run
  5. Monitor GPU/RAM via Telemetry

Select Workflow template

Select number frames, size , prompt

πŸ’» Web Terminal

Web Terminal

  • Select tab Connect
  • Enable web terminal
  • Provides terminal access directly in your browser.

πŸ” Secrets

Docs

Useful secrets:

  • PASSWORD
  • CIVITAI_TOKEN
  • HF_TOKEN

πŸ§‘β€πŸ’» Code-Server Login

Login without password variable set

If no "PASSWORD" was set open the web terminal and enter.

cat /root/.config/code-server/config.yaml

Copy the password β†’ log in via the Code-Server service on tab Connect.

πŸ“₯ Downloading Models and LoRAs

From web terminal or Code-Server.

🧩 CivitAI

If no "CIVITAI_TOKEN" was set, create or use a free token from the civitai website.

export CIVITAI_TOKEN="xxxxx"

Download example from CivitAI

civitai "https://civitai.com/api/download/models/2377549?type=Model&format=SafeTensor" /workspace/ComfyUI/models/loras/
civitai "https://civitai.com/api/download/models/2377566?type=Model&format=SafeTensor" /workspace/ComfyUI/models/loras/

Refresh ComfyUI using key r.

☁️ HuggingFace

"HF_TOKEN" is mandatory but needed for gated sites and upload.

Login:

hf auth login --token xxxxx

or set token:

export HF_TOKEN="xxxxx"

Download example from Huggingface.

hf download ricecake/wan21NSFWClipVisionH_v10 wan21NSFWClipVisionH_v10.safetensors --local-dir /workspace/ComfyUI/models/clip_vision

Refresh ComfyUI using key r.

πŸ”„ Uploading & Downloading Files

☁️ Cloud Sync

Free dropbox

Cloud sync

  • Reliable and fast upload and download for large files.
  • Go to Dropbox developers
  • Create an app to connect with runpod.io.

πŸ“¦ runpodctl

Speed

  • Fine for downloading files from your pod.
  • Problematic for uploading large files to your pod with slow connections (timeouts).
  • Perfect for transfering files between pods.

Installation

  • You need to install a client on your local computer.
  • You do not need an api key to upload/download to/from your pod.

πŸ”§ Advanced Features

πŸ” SSH / SCP / SFTP

Docs.

Key generation

  • Linux has ssh-keygen already installed to generate keys.
  • Windows install Git to get ssh-keygen.
  • Put your public key on runpod.io keep your private key on your local computer.

Apps.

πŸ”‘ RunPod API

Useful when the web console is out (examples are outages from AWS and Cloudflare).

Using runpod.io API

  • Docs.
  • Install with "sudo apt install curl" on Ubuntu.
curl --request GET \
  --url https://rest.runpod.io/v1/pods \
  --header 'Authorization: Bearer <api-key>'

curl --request POST \
  --url https://rest.runpod.io/v1/pods/{podId}/stop \
  --header 'Authorization: Bearer <api-key>'

curl --request DELETE \
  --url https://rest.runpod.io/v1/pods/{podId} \
  --header 'Authorization: Bearer <api-key>'

Using runpodctl to start/stop your pod with your api key.

  • Docs.
  • Install client on local computer.
  • Use Shell/PowerShell or Bash.
runpodctl config --apiKey <YOUR_API_KEY>

runpodctl get pod --allfields

runpodctl stop pod <pod_id>

runpodctl remove pod <pod_id>