Files
mule-image/docker-compose.yml
dtoro f7bf22db29 chore(docker): add proxies_data volume for /proxy endpoint cache
The /photos/{id}/proxy endpoint (added in 1096854) caches transcoded
RAW/HEIC WebPs at /data/proxies/{id}.webp, but the compose file had no
volume mount for that path — files would be lost on every container
restart, forcing repeated full-resolution decodes. Adding a named
volume to both backend and worker so the cache survives restarts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 22:15:43 +02:00

93 lines
2.2 KiB
YAML

version: '3.8'
services:
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: mulita-frontend
ports:
- "3000:80"
depends_on:
- backend
networks:
- mulita-network
restart: unless-stopped
backend:
build:
context: ./backend
dockerfile: Dockerfile
container_name: mulita-backend
ports:
- "8001:8000"
volumes:
- ./mulita.yml:/app/config/mulita.yml:ro
- ${PHOTO_DIRS:-./photos}:/photos:rw
- ~/Pictures:/host/Pictures:ro
- thumbs_data:/data/thumbs
- proxies_data:/data/proxies
- db_data:/data/db
- trash_data:/data/trash
environment:
- DATABASE_URL=sqlite+aiosqlite:////data/db/mulita.db
- REDIS_URL=redis://redis:6379
- CELERY_BROKER_URL=redis://redis:6379
- CELERY_RESULT_BACKEND=redis://redis:6379
- PHOTO_DIRS=${PHOTO_DIRS:-/photos}
depends_on:
- redis
networks:
- mulita-network
restart: unless-stopped
worker:
build:
context: ./backend
dockerfile: Dockerfile
container_name: mulita-worker
command: celery -A app.tasks.celery worker --loglevel=info --concurrency=4
volumes:
- ./mulita.yml:/app/config/mulita.yml:ro
- ${PHOTO_DIRS:-./photos}:/photos:rw
- ~/Pictures:/host/Pictures:ro
- thumbs_data:/data/thumbs
- proxies_data:/data/proxies
- db_data:/data/db
- trash_data:/data/trash
environment:
- DATABASE_URL=sqlite+aiosqlite:////data/db/mulita.db
- REDIS_URL=redis://redis:6379
- CELERY_BROKER_URL=redis://redis:6379
- CELERY_RESULT_BACKEND=redis://redis:6379
- PHOTO_DIRS=${PHOTO_DIRS:-/photos}
- CELERYD_CONCURRENCY=4
depends_on:
- redis
- backend
networks:
- mulita-network
restart: unless-stopped
redis:
image: redis:7-alpine
container_name: mulita-redis
ports:
- "6379:6379"
volumes:
- redis_data:/data
networks:
- mulita-network
restart: unless-stopped
command: redis-server --appendonly yes
networks:
mulita-network:
driver: bridge
volumes:
thumbs_data:
proxies_data:
db_data:
trash_data:
redis_data: