services: music-worker: image: ghcr.io/ace-step/ace-step-1.5:latest@sha256:95652cd780c78a1b1a7f6f0335530430f0ae53d96c7c12d59f9f39fa23d38567 container_name: mike-ai-music-acestep-test labels: com.mike-ai.music-worker: "acestep" profiles: ["music-test"] environment: ACESTEP_MODE: gradio ACESTEP_CONFIG_PATH: acestep-v15-xl-sft ACESTEP_LM_MODEL_PATH: acestep-5Hz-lm-1.7B ACESTEP_LLM_BACKEND: pt ACESTEP_INIT_SERVICE: "true" ACESTEP_INIT_LLM: "true" ACESTEP_DEVICE: cuda # The image entrypoint forwards only ACESTEP_EXTRA_ARGS to the UI CLI. # One result per run avoids the batch=2 VRAM/time penalty. ACESTEP_EXTRA_ARGS: "--batch_size 1" TOKENIZERS_PARALLELISM: "false" NVIDIA_VISIBLE_DEVICES: ${ACESTEP_GPU_UUID:?set ACESTEP_GPU_UUID to the RTX 5080 UUID} deploy: resources: reservations: devices: - driver: nvidia device_ids: ["${ACESTEP_GPU_UUID:?set ACESTEP_GPU_UUID to the RTX 5080 UUID}"] capabilities: [gpu] ports: - "127.0.0.1:${ACESTEP_UI_PORT:-7861}:7860" volumes: - ${ACESTEP_CHECKPOINTS_DIR:-/data/models/acestep/checkpoints}:/app/checkpoints - ${ACESTEP_HF_CACHE_DIR:-/data/models/acestep/hf-cache}:/root/.cache/huggingface - ${ACESTEP_OUTPUT_DIR:-/data/music/acestep}:/app/gradio_outputs - ${ACESTEP_OUTPUT_DIR:-/data/music/acestep}:/app/output # Version-pinned UI defaults for XL-SFT quality and lossless output. - ./overrides/model_config.py:/app/acestep/ui/gradio/events/generation/model_config.py:ro - ./overrides/generation_advanced_output_controls.py:/app/acestep/ui/gradio/interfaces/generation_advanced_output_controls.py:ro - ./overrides/user_preferences.py:/app/acestep/ui/gradio/interfaces/user_preferences.py:ro - ./overrides/user_preferences.js:/app/acestep/ui/gradio/interfaces/user_preferences.js:ro shm_size: "2gb" restart: "no" healthcheck: test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:7860/ >/dev/null"] interval: 30s timeout: 10s start_period: 300s retries: 3