The UI mutates /app/config.yaml on every add/remove of subreddits, users
or blacklist entries. With the :ro flag the write fails with OSError and
the route returns 500 (the frontend then shows "Erro de conexão"
because the plain-text 500 body is not JSON-parseable).
Drop :ro from both compose files and from the README volumes table.
Add a release workflow that publishes a linux/amd64 image to
ghcr.io/richardnixondev/reddit-media-collector on every v* tag, plus a
ready-to-paste docker-compose for Synology Container Manager.
Persist scheduler state across container restarts by reading the DB and
config paths from RMC_SCHEDULER_DB / RMC_SCHEDULER_CONFIG (previously
written to /app, which is not a volume).
Drive-by fixes uncovered while smoke-testing the image:
- Dockerfile now copies README.md (required by pyproject) and drops the
single-file VOLUME entry that breaks bind mounts; adds an OCI source
label and a socket-based HEALTHCHECK so Container Manager reflects real
liveness.
- src/web/app.py uses the new Starlette TemplateResponse signature so the
index page does not 500 under fresh dependency pins.