Alla fine ho risolto il problema. La configurazione sopra è effettivamente buona. Stavo lavorando direttamente nel contenitore Docker. Per qualche motivo la configurazione è rimasta nella cache.
I seguenti comandi non hanno cancellato la cache di configurazione:
php artisan config:clear
php artisan config:cache
php artisan cache:clear
L'ho notato quando ho creato un nuovo utente per connettersi al database per testare qualcosa. Ricostruisco il container con la nuova configurazione e ora funziona tutto perfettamente.