Files
2026-08-06 15:11:18 -04:00

33 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Start ComfyUI headless on the pod, listening on 127.0.0.1:8188.
# Uses tmux when available (attachable session), else nohup.
# Log is per-host: pods sharing a network volume must not share log files.
# Extra launch flags via COMFY_ARGS, e.g.:
# COMFY_ARGS="--reserve-vram 2.5" bash start-comfyui.sh # 24GB cards
set -euo pipefail
LOG=/workspace/minimax-h3/comfyui-$(hostname).log
# reduce near-limit CUDA OOMs from fragmentation (community-verified for H3)
export PYTORCH_CUDA_ALLOC_CONF=${PYTORCH_CUDA_ALLOC_CONF:-expandable_segments:True}
mkdir -p /workspace/minimax-h3/output
ARGS=${COMFY_ARGS:-}
# wait out any process that is mid-shutdown before deciding it's "running"
for i in 1 2 3 4 5; do
pgrep -f "python3? main[.]py" >/dev/null || break
sleep 2
done
if pgrep -f "python3? main[.]py" >/dev/null; then
echo "ComfyUI already running"
exit 0
fi
if command -v tmux >/dev/null; then
tmux new -s comfyui -d \
"cd /ComfyUI && python3 main.py --listen 127.0.0.1 --port 8188 --output-directory /workspace/minimax-h3/output $ARGS 2>&1 | tee -a $LOG"
else
cd /ComfyUI
nohup python3 main.py --listen 127.0.0.1 --port 8188 --output-directory /workspace/minimax-h3/output $ARGS >>"$LOG" 2>&1 &
fi
echo "started; tail $LOG"