#!/usr/bin/env bash # Create ComfyUI data directories on the data disk. ensure_comfyui_dirs() { local data_root="${1:-/data}" mkdir -p \ "${data_root}/apps/comfyui/storage" \ "${data_root}/apps/comfyui/models/checkpoints" \ "${data_root}/apps/comfyui/models/loras" \ "${data_root}/apps/comfyui/models/vae" \ "${data_root}/apps/comfyui/models/controlnet" \ "${data_root}/apps/comfyui/models/upscale_models" \ "${data_root}/apps/comfyui/models/clip" \ "${data_root}/apps/comfyui/models/unet" \ "${data_root}/apps/comfyui/cache/hf-hub" \ "${data_root}/apps/comfyui/cache/torch-hub" \ "${data_root}/apps/comfyui/input" \ "${data_root}/apps/comfyui/output" \ "${data_root}/apps/comfyui/custom_nodes" \ "${data_root}/apps/comfyui/workflows" # Host downloads (Server UI / CLI) need write access; container (root) can still write. local owner="${COMFYUI_DATA_OWNER:-${SUDO_USER:-}}" if [[ "${EUID}" -eq 0 && -n "${owner}" ]]; then chown -R "${owner}:${owner}" "${data_root}/apps/comfyui/models" fi } if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then ensure_comfyui_dirs "${1:-/data}" fi