media-rip/backend
xpltd 5a6eb00906 Docker self-hosting: fix persistence, add data_dir config
Critical fix:
- Dockerfile env var was MEDIARIP__DATABASE__PATH (ignored) — now MEDIARIP__SERVER__DB_PATH
  DB was landing at /app/mediarip.db (lost on restart) instead of /data/mediarip.db

Persistence model:
- /downloads → media files (bind mount recommended)
- /data → SQLite DB, session cookies, error logs (named volume)
- /themes → custom CSS themes (read-only bind mount)
- /app/config.yaml → optional YAML config (read-only bind mount)

Other changes:
- Add server.data_dir config field (default: /data) for explicit session storage
- Cookie storage uses data_dir instead of fragile path math from output_dir parent
- Lifespan creates data_dir on startup
- .dockerignore excludes tests, dev DB, egg-info
- docker-compose.yml: inline admin/purge config examples
- docker-compose.example.yml: parameterized with env vars
- .env.example: session mode, clearer docs
- README: Docker volumes table, admin setup docs, full config reference
- PROJECT.md: reflects completed v1.0 state
- REQUIREMENTS.md: all 26 requirements validated
2026-03-19 09:56:10 -05:00
..
app Docker self-hosting: fix persistence, add data_dir config 2026-03-19 09:56:10 -05:00
media_rip.egg-info M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
tests Docker self-hosting: fix persistence, add data_dir config 2026-03-19 09:56:10 -05:00
.gitignore M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
pyproject.toml M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
requirements.txt M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00