## Context PRD §10 — Uploaded images need reliable storage. Currently media files go to a Docker volume that could be lost if the container is recreated. ## Requirements - Media files (uploaded images) stored durably - Options: S3 via django-storages, or a persistent volume with backup - Serve media efficiently (Nginx direct or S3/CloudFront) - ~19,000 existing image files to store after migration (#21) ## Current State - MEDIA_ROOT = BASE_DIR / \"media\" (container filesystem) - docker-compose.prod.yml has a media_files volume - No S3 configuration - django-storages not installed ## Acceptance Criteria - [ ] Uploaded media files persist across deployments - [ ] Media served efficiently (not through Django) - [ ] Backup strategy for media files - [ ] Clear path for future S3 migration if using local storage initially ## References - PRD §10 — Media storage - PRD §8 — S3 or local disk + Nginx
Context
PRD §10 — Uploaded images need reliable storage. Currently media files go to a Docker volume that could be lost if the container is recreated.
Requirements
Current State
Acceptance Criteria
References