summaryrefslogtreecommitdiff
path: root/hyperstack-vm-photo.toml
diff options
context:
space:
mode:
Diffstat (limited to 'hyperstack-vm-photo.toml')
-rw-r--r--hyperstack-vm-photo.toml68
1 files changed, 68 insertions, 0 deletions
diff --git a/hyperstack-vm-photo.toml b/hyperstack-vm-photo.toml
new file mode 100644
index 0000000..d6130b0
--- /dev/null
+++ b/hyperstack-vm-photo.toml
@@ -0,0 +1,68 @@
+[auth]
+api_key_file = "~/.hyperstack"
+
+[hyperstack]
+base_url = "https://infrahub-api.nexgencloud.com/v1"
+
+[state]
+file = ".hyperstack-vm-photo-state.json"
+
+[vm]
+name_prefix = "hyperstack-photo"
+hostname = "hyperstack-photo"
+environment_name = "snonux-ollama"
+
+# L40 (48GB GDDR6, ~$1.00/hr) is the recommended GPU for ComfyUI photo enhancement.
+# It provides ample VRAM for SUPIR (FP16 needs ~12-20GB) + Real-ESRGAN with large tile sizes.
+# Cheaper than A100 ($2/hr) while offering faster CUDA cores and FP8 support.
+flavor_name = "n3-L40x1"
+image_name = "Ubuntu Server 24.04 LTS R570 CUDA 12.8 with Docker"
+assign_floating_ip = true
+create_bootable_volume = false
+enable_port_randomization = false
+labels = ["comfyui", "photo-enhance", "wireguard"]
+
+[ssh]
+username = "ubuntu"
+private_key_path = "~/.ssh/id_rsa"
+hyperstack_key_name = "earth"
+port = 22
+connect_timeout_sec = 10
+
+[network]
+wireguard_udp_port = 56710
+wireguard_subnet = "192.168.3.0/24"
+# Photo VM uses .4; VM1=.1, VM2=.3 are the LLM VMs on the same wg1 tunnel.
+wireguard_server_ip = "192.168.3.4"
+# Reuse the same inference port constant; ComfyUI uses its own port 8188 below.
+ollama_port = 11434
+allowed_ssh_cidrs = ["auto"]
+allowed_wireguard_cidrs = ["auto"]
+
+[bootstrap]
+enable_guest_bootstrap = true
+install_wireguard = true
+configure_ufw = true
+configure_ollama_host = false
+
+[ollama]
+# Not needed on this VM; photo enhancement uses ComfyUI exclusively.
+install = false
+
+[vllm]
+# Not needed on this VM; ComfyUI handles all inference.
+install = false
+
+[comfyui]
+install = true
+# ComfyUI REST API port — opened on the WireGuard subnet only.
+port = 8188
+# Model weights on ephemeral NVMe for fast access; survives reboots on Hyperstack.
+models_dir = "/ephemeral/comfyui/models"
+output_dir = "/ephemeral/comfyui/output"
+container_name = "comfyui_photo"
+# Pre-downloaded model weights:
+# RealESRGAN_x4plus — fast 4x upscaling + sharpening (~65MB, upscale_models/)
+# SUPIR-v0Q — SDXL-based photo restoration, Photolemur-quality results (~8GB, checkpoints/)
+# SUPIR-v0F — SUPIR variant tuned for faithful fidelity over generative enhancement (~8GB)
+models = ["RealESRGAN_x4plus", "SUPIR-v0Q"]