services: ebook2audiobook: image: ebook2audiobook:${DEVICE_TAG:-cpu} # e.g. DEVICE_TAG=cu128 → ebook2audiobook:cu128 etc. build: context: . dockerfile: Dockerfile args: APP_VERSION: ${APP_VERSION:-25.25.25} DEVICE_TAG: ${DEVICE_TAG:-cpu} # e.g. cu124, cu128, rocm, xpu, cpu etc. container_name: ebook2audiobook working_dir: /app entrypoint: ["python", "app.py", "--script_mode", "full_docker"] tty: true stdin_open: true ports: - "7860:7860" security_opt: - label=disable # Required on SELinux/Podman hosts like Unraid/Fedora volumes: - .:/app:rw # Bind mount current directory – works everywhere restart: unless-stopped # All are optional and harmless if the device/backend is not present devices: # NVIDIA CUDA – requires NVIDIA Container Toolkit + CDI generated on host - nvidia.com/gpu=all # Intel XPU / oneAPI / Arc iGPU / ROCm - /dev/dri:/dev/dri # AMD ROCm - /dev/kfd:/dev/kfd group_add: - video - render # For Intel/AMD graphics access (harmless on NVIDIA/CPU)