122 lines
3.5 KiB
YAML
122 lines
3.5 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
# DAGI Router для NODE3
|
|
dagi-router-node3:
|
|
build:
|
|
context: ./services/router
|
|
dockerfile: Dockerfile
|
|
container_name: dagi-router-node3
|
|
ports:
|
|
- "9102:8000"
|
|
environment:
|
|
- NATS_URL=nats://144.76.224.179:4222
|
|
- ROUTER_CONFIG_PATH=/app/router_config.yaml
|
|
- LOG_LEVEL=info
|
|
- NODE_ID=node-3-threadripper-rtx3090
|
|
- COMFY_AGENT_URL=http://comfy-agent:8880
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
- ./services/router/router_config.yaml:/app/router_config.yaml:ro
|
|
- ./logs:/app/logs
|
|
networks:
|
|
- dagi-network
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
# Swapper Service для NODE3
|
|
swapper-service-node3:
|
|
build:
|
|
context: ./services/swapper-service
|
|
dockerfile: Dockerfile
|
|
container_name: swapper-service-node3
|
|
ports:
|
|
- "8890:8890"
|
|
- "8891:8891" # Metrics
|
|
environment:
|
|
- OLLAMA_BASE_URL=http://host.docker.internal:11434
|
|
- SWAPPER_CONFIG_PATH=/app/config/swapper_config.yaml
|
|
- SWAPPER_MODE=single-active
|
|
- MAX_CONCURRENT_MODELS=1
|
|
- MODEL_SWAP_TIMEOUT=300
|
|
- GPU_ENABLED=true
|
|
- NODE_ID=node-3-threadripper-rtx3090
|
|
volumes:
|
|
- ./services/swapper-service/config/swapper_config_node3.yaml:/app/config/swapper_config.yaml:ro
|
|
- ./logs:/app/logs
|
|
networks:
|
|
- dagi-network
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://localhost:8890/health || exit 1"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
# Comfy Agent - Image & Video Generation Service
|
|
comfy-agent:
|
|
build:
|
|
context: ./services/comfy-agent
|
|
dockerfile: Dockerfile
|
|
args:
|
|
- BASE_IMAGE=microdao-daarion-comfy-agent:latest
|
|
container_name: comfy-agent-node3
|
|
ports:
|
|
- "8880:8880"
|
|
environment:
|
|
- COMFYUI_HTTP=http://host.docker.internal:8188
|
|
- COMFYUI_WS=ws://host.docker.internal:8188/ws
|
|
- NATS_URL=nats://144.76.224.179:4222
|
|
- NATS_SUBJECT_INVOKE=agent.invoke.comfy
|
|
- NATS_SUBJECT_IMAGE=comfy.request.image
|
|
- NATS_SUBJECT_VIDEO=comfy.request.video
|
|
- STORAGE_PATH=/data/comfy-results
|
|
- PUBLIC_BASE_URL=http://212.8.58.133:8880/files
|
|
- S3_ENDPOINT=144.76.224.179:9000
|
|
- S3_BUCKET=comfy-results
|
|
- S3_ACCESS_KEY=minioadmin
|
|
- S3_SECRET_KEY=minioadmin
|
|
- S3_SECURE=false
|
|
- S3_URL_TTL_S=900
|
|
- S3_PREFIX=node3
|
|
- LTX_CKPT_NAME=ltx-2-19b-distilled-fp8.safetensors
|
|
- LTX_TEXT_ENCODER=ltx2_gemma3_part1_spiece.safetensors
|
|
- LTX_DEVICE=default
|
|
- LTX_SAMPLER=euler
|
|
- LTX_MAX_SHIFT=2.05
|
|
- LTX_BASE_SHIFT=0.95
|
|
- LTX_TERMINAL=0.1
|
|
- LTX_STRETCH=true
|
|
- MAX_CONCURRENCY=1
|
|
volumes:
|
|
- comfy-results:/data/comfy-results
|
|
- ./logs:/app/logs
|
|
networks:
|
|
- dagi-network
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8880/healthz')"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 15s
|
|
|
|
networks:
|
|
dagi-network:
|
|
external: true
|
|
|
|
volumes:
|
|
comfy-results:
|
|
driver: local
|