Files
duplicate-finder/docker-compose.yml
tocmo c110a8e4f9 GPU-accelerated phash + fix discovery/takeout hang
GPU:
- Switch Dockerfile base to pytorch/pytorch:2.3.1-cuda12.1-cudnn8-runtime
- Add gpu_hasher.py: batched 2D DCT on GPU via PyTorch matrix multiply,
  256 images/batch, produces imagehash-compatible 64-bit hex hashes,
  auto-falls back to CPU when CUDA unavailable
- Replace per-image phash loop in scanner.py with phasher.hash_files()
- docker-compose.yml: add nvidia GPU device reservation

Hang fix:
- takeout.is_takeout_folder() now caps at 50 directories (was walking
  entire tree — blocked for minutes on 65k+ file libraries)
- Add "Not a Takeout folder" status message so takeout phase is never silent

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-05 01:37:28 -04:00

23 lines
527 B
YAML

services:
dup-finder:
build: .
container_name: dup-finder
restart: unless-stopped
ports:
- "8765:8000"
volumes:
# Mount the photo library — READ ONLY, never modified
- /volume1/photos:/photos:ro
# Database persistence
- /volume1/docker/dup-finder/data:/data
deploy:
resources:
limits:
cpus: "4.0"
memory: 4G
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]