- Entrypoint: chown -R /data (not just the directory) so existing
volume files owned by root become writable by node user
- Entrypoint: add echo logging so startup progress is visible
- db.js: verify /data is writable before opening SQLite
- db.js: wrap Database() constructor in try-catch with clear error
message instead of crashing silently at ESM import time
- Add entrypoint script that ensures /data is owned by node user
before dropping privileges with su-exec
- Remove USER node from Dockerfile (entrypoint handles it)
- Change client depends_on to service_healthy so nginx waits for
the server to pass its healthcheck before starting