Files
rocm-automated/docker-compose.yaml
2025-11-27 13:45:38 -05:00

166 lines
7.5 KiB
YAML

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={"60":{"inputs":{"filename_prefix":"Qwen_t2i","images":["75:8",0]},"class_type":"SaveImage","_meta":{"title":"Save Image"}},"75:58":{"inputs":{"width":1328,"height":1328,"batch_size":1},"class_type":"EmptySD3LatentImage","_meta":{"title":"EmptySD3LatentImage"}},"75:7":{"inputs":{"text":"","clip":["75:38",0]},"class_type":"CLIPTextEncode","_meta":{"title":"CLIP Text Encode (Negative Prompt)"}},"75:66":{"inputs":{"shift":3.1000000000000005,"model":["75:73",0]},"class_type":"ModelSamplingAuraFlow","_meta":{"title":"ModelSamplingAuraFlow"}},"75:8":{"inputs":{"samples":["75:3",0],"vae":["75:39",0]},"class_type":"VAEDecode","_meta":{"title":"VAE Decode"}},"75:37":{"inputs":{"unet_name":"qwen_image_fp8_e4m3fn.safetensors","weight_dtype":"default"},"class_type":"UNETLoader","_meta":{"title":"Load Diffusion Model"}},"75:6":{"inputs":{"text":"Giant blue and purple big billboard on rooftop in san francisco city billboard says \"ComfyUI is built with love\" All kinds of buoildings in different shapes and colors. Some buildings have grafitti \"We\" \"Here\" \"Today\"","clip":["75:38",0]},"class_type":"CLIPTextEncode","_meta":{"title":"CLIP Text Encode (Positive Prompt)"}},"75:38":{"inputs":{"clip_name":"qwen_2.5_vl_7b_fp8_scaled.safetensors","type":"qwen_image","device":"default"},"class_type":"CLIPLoader","_meta":{"title":"Load CLIP"}},"75:39":{"inputs":{"vae_name":"qwen_image_vae.safetensors"},"class_type":"VAELoader","_meta":{"title":"Load VAE"}},"75:3":{"inputs":{"seed":34567865435678,"steps":4,"cfg":1,"sampler_name":"euler","scheduler":"simple","denoise":1,"model":["75:66",0],"positive":["75:6",0],"negative":["75:7",0],"latent_image":["75:58",0]},"class_type":"KSampler","_meta":{"title":"KSampler"}},"75:73":{"inputs":{"lora_name":"Qwen-Image-Lightning-4steps-V1.0.safetensors","strength_model":1,"model":["75:37",0]},"class_type":"LoraLoaderModelOnly","_meta":{"title":"LoraLoaderModelOnly"}}}
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