services: open-webui: image: ghcr.io/open-webui/open-webui:main container_name: open-webui environment: - HOSTNAME=open-webui - OLLAMA_BASE_URL=http://172.28.0.3:11434 - ENABLE_IMAGE_GENERATION=true - ENABLE_IMAGE_PROMPT_GENERATION=true - IMAGE_GENERATION_ENGINE=comfyui # Options: comfyui, openai, automatic1111, gemini - ENABLE_IMAGE_EDIT=comfyui # Options: comfyui, openai, gemini - COMFYUI_BASE_URL=http://172.28.0.5:8188 - COMFYUI_WORKFLOW={"3":{"inputs":{"seed":466283053198345,"steps":4,"cfg":1,"sampler_name":"res_multistep","scheduler":"simple","denoise":1,"model":["66",0],"positive":["6",0],"negative":["7",0],"latent_image":["58",0]},"class_type":"KSampler","_meta":{"title":"KSampler"}},"6":{"inputs":{"text":"Prompt","clip":["38",0]},"class_type":"CLIPTextEncode","_meta":{"title":"CLIP Text Encode (Positive Prompt)"}},"7":{"inputs":{"text":"","clip":["38",0]},"class_type":"CLIPTextEncode","_meta":{"title":"CLIP Text Encode (Negative Prompt)"}},"8":{"inputs":{"samples":["3",0],"vae":["39",0]},"class_type":"VAEDecode","_meta":{"title":"Decodificación VAE"}},"37":{"inputs":{"unet_name":"qwen_image_fp8_e4m3fn.safetensors","weight_dtype":"fp8_e4m3fn_fast"},"class_type":"UNETLoader","_meta":{"title":"Cargar Modelo de Difusión"}},"38":{"inputs":{"clip_name":"qwen_2.5_vl_7b_fp8_scaled.safetensors","type":"qwen_image","device":"default"},"class_type":"CLIPLoader","_meta":{"title":"Cargar CLIP"}},"39":{"inputs":{"vae_name":"qwen_image_vae.safetensors"},"class_type":"VAELoader","_meta":{"title":"Cargar VAE"}},"58":{"inputs":{"width":1328,"height":1328,"batch_size":1},"class_type":"EmptySD3LatentImage","_meta":{"title":"EmptySD3LatentImage"}},"60":{"inputs":{"filename_prefix":"ComfyUI","images":["75",0]},"class_type":"SaveImage","_meta":{"title":"Guardar Imagen"}},"66":{"inputs":{"shift":3.1,"model":["73",0]},"class_type":"ModelSamplingAuraFlow","_meta":{"title":"ModelSamplingAuraFlow"}},"73":{"inputs":{"lora_name":"Qwen-Image-Lightning-4steps-V1.0.safetensors","strength_model":1,"model":["37",0]},"class_type":"LoraLoaderModelOnly","_meta":{"title":"CargadorLoRAModeloSolo"}},"75":{"inputs":{"anything":["8",0]},"class_type":"easy cleanGpuUsed","_meta":{"title":"Clean VRAM Used"}}} - COMFYUI_WORKFLOW_NODES=[{"type":"prompt","key":"text","node_ids":["6"]},{"type":"model","key":"unet_name","node_ids":["37"]},{"type":"width","key":"width","node_ids":["58"]},{"type":"height","key":"height","node_ids":["58"]},{"type":"steps","key":"steps","node_ids":["3"]},{"type":"seed","key":"seed","node_ids":["3"]}] ports: - "3000:8080" networks: rocm-network: ipv4_address: 172.28.0.2 volumes: - ./User-Directories/open-webui:/app/backend/data - /etc/resolv.conf:/etc/resolv.conf:ro restart: always devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video security_opt: - "label=disable" ollama: image: getterup/ollama-rocm7.1:latest container_name: ollama ports: - "11434:11434" networks: rocm-network: ipv4_address: 172.28.0.3 volumes: - ./User-Directories/ollama:/root/.ollama:Z - /etc/resolv.conf:/etc/resolv.conf:ro devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video environment: - HOSTNAME=ollama - OLLAMA_VULKAN=0 - OLLAMA_DEBUG=2 - OLLAMA_FLASH_ATTENTION=true - HSA_ENABLE_SDMA=0 - OLLAMA_KEEP_ALIVE=-1 - OLLAMA_MAX_LOADED_MODELS=1 - OLLAMA_FLASH_ATTENTION=1 - OLLAMA_GPU_OVERHEAD=0 - OLLAMA_KEEP_ALIVE=1h - OLLAMA_LIBRARY_PATH="/usr/lib/ollama/rocm_v7" # - ROCR_VISIBLE_DEVICES=0 restart: unless-stopped cap_add: - SYS_PTRACE ipc: host security_opt: - seccomp=unconfined - label=disable stable-diffusion.cpp: image: getterup/stable-diffusion.cpp-rocm7.1:gfx1151 container_name: stable-diffusion.cpp ports: - "7860:7860" networks: rocm-network: ipv4_address: 172.28.0.4 volumes: - ./User-Directories/sd.cpp-webui/outputs/any2video:/sd-webui/outputs/any2video:Z - ./User-Directories/sd.cpp-webui/outputs/img2img:/sd-webui/outputs/img2img:Z - ./User-Directories/sd.cpp-webui/outputs/imgedit:/sd-webui/outputs/imgedit:Z - ./User-Directories/sd.cpp-webui/outputs/txt2img:/sd-webui/outputs/txt2img:Z - ./User-Directories/sd.cpp-webui/outputs/upscale:/sd-webui/outputs/upscale:Z - ./User-Directories/sd.cpp-webui/models/checkpoints:/sd-webui/models/checkpoints:Z - ./User-Directories/sd.cpp-webui/models/clip:/sd-webui/models/clip:Z - ./User-Directories/sd.cpp-webui/models/controlnet:/sd-webui/models/controlnet:Z - ./User-Directories/sd.cpp-webui/models/embeddings:/sd-webui/models/embeddings:Z - ./User-Directories/sd.cpp-webui/models/loras:/sd-webui/models/loras:Z - ./User-Directories/sd.cpp-webui/models/photomaker:/sd-webui/models/photomaker:Z - ./User-Directories/sd.cpp-webui/models/taesd:/sd-webui/models/taesd:Z - ./User-Directories/sd.cpp-webui/models/unet:/sd-webui/models/unet:Z - ./User-Directories/sd.cpp-webui/models/upscale_models:/sd-webui/models/upscale_models:Z - ./User-Directories/sd.cpp-webui/models/vae:/sd-webui/models/vae:Z - /etc/resolv.conf:/etc/resolv.conf:ro devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video #environment: # - HSA_OVERRIDE_GFX_VERSION="11.5.1" restart: unless-stopped security_opt: - seccomp=unconfined - label=disable comfyui: image: docker.io/getterup/comfyui-rocm7.1:latest container_name: comfyui environment: - HIP_VISIBLE_DEVICES=0 - ROCR_VISIBLE_DEVICES=0 - COMFYUI_ENABLE_ROCM=True - GPU_ARCH=rocm7.1 - PYTORCH_TUNABLEOP_ENABLED=0 - MIOPEN_FIND_MODE=1 - AMD_SERIALIZE_KERNEL=1 - MIOPEN_USER_DB_PATH=/tmp/.miopen - MIOPEN_CUSTOM_CACHE_DIR=/tmp/.miopen - MIOPEN_DEBUG_DISABLE_FIND_DB=1 # === GPU targeting === # - HCC_AMDGPU_TARGET="gfx1100" # Change for your GPU # - PYTORCH_ROCM_ARCH="gfx1100" # e.g., gfx1030 for RX 6800/6900 # === Memory allocator tuning === - PYTORCH_ALLOC_CONF=garbage_collection_threshold:0.6,max_split_size_mb:6144 # === Precision and performance === - TORCH_BLAS_PREFER_HIPBLASLT=0 - TORCHINDUCTOR_MAX_AUTOTUNE_GEMM_BACKENDS="CK,TRITON,ROCBLAS" - TORCHINDUCTOR_MAX_AUTOTUNE_GEMM_SEARCH_SPACE="BEST" - TORCHINDUCTOR_FORCE_FALLBACK=0 # === Flash Attention === - FLASH_ATTENTION_TRITON_AMD_ENABLE="TRUE" - FLASH_ATTENTION_BACKEND="flash_attn_triton_amd" - FLASH_ATTENTION_TRITON_AMD_SEQ_LEN=4096 - USE_CK=ON - TRANSFORMERS_USE_FLASH_ATTENTION=1 - TRITON_USE_ROCM=ON - TORCH_ROCM_AOTRITON_ENABLE_EXPERIMENTAL=1 # === CPU threading === - OMP_NUM_THREADS=8 - MKL_NUM_THREADS=8 - NUMEXPR_NUM_THREADS=8 # === Experimental ROCm flags === - HSA_ENABLE_ASYNC_COPY=1 - HSA_ENABLE_SDMA=0 - MIOPEN_ENABLE_CACHE=1 # - MIGRAPHX_MLIR_USE_SPECIFIC_OPS="attention" ports: - "8188:8188" networks: rocm-network: ipv4_address: 172.28.0.5 volumes: - ./comfyui-build/docker-entrypoint.sh:/docker-entrypoint.sh - ./User-Directories/ComfyUI/:/app/ComfyUI:Z - /etc/resolv.conf:/etc/resolv.conf:ro devices: - /dev/kfd:/dev/kfd - /dev/dri:/dev/dri group_add: - video restart: unless-stopped security_opt: - seccomp=unconfined - label=disable networks: rocm-network: driver: bridge ipam: config: - subnet: 172.28.0.0/16