If a self-hosted Appwrite install fails with database or redis connection errors (Failed to create connection, AUTH password errors, or the appwrite-schedule, appwrite-maintenance and appwrite-usage containers restarting), check your .env for _APP_REDIS_USER and _APP_REDIS_PASS. The redis library in use didn't support passing a user and password, so setting those vars breaks the connections. Fix: remove those two vars from .env, wipe the volumes (docker compose down -v), then bring it back up. Also note: editing the database password in .env after the first run does nothing, the actual password lives in the database volume, so a full wipe is the way to get fresh credentials applied.
_Source: gh:appwrite/appwrite#7068 (Appwrite)_