services: am-deduper: image: gitea.king.nyc.mn/openclaw/am-deduper:latest container_name: am-deduper restart: unless-stopped command: - watch - /music/AllMusic - --db - /data/dedupe.db environment: TZ: Asia/Shanghai PYTHONUNBUFFERED: "1" AM_DEDUPER_TOKEN: ${AM_DEDUPER_TOKEN:-} volumes: - /vol2/1000/Docker/chfs/data/Backup/AllMusic:/music/AllMusic - /vol2/1000/Docker/am-deduper/data:/data stop_grace_period: 30s am-deduper-web: image: gitea.king.nyc.mn/openclaw/am-deduper:latest container_name: am-deduper-web restart: unless-stopped command: - server - --host - 0.0.0.0 - --port - "8080" environment: TZ: Asia/Shanghai PYTHONUNBUFFERED: "1" AM_DEDUPER_TOKEN: ${AM_DEDUPER_TOKEN:-} volumes: - /vol2/1000/Docker/chfs/data/Backup/AllMusic:/music/AllMusic - /vol2/1000/Docker/am-deduper/data:/data ports: - "18080:8080" healthcheck: test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen(\"http://127.0.0.1:8080/\", timeout=3)"] interval: 30s timeout: 5s retries: 3 start_period: 10s stop_grace_period: 10s