Прежде всего вы должны проверить, какой контейнер запускает службу mysql:
sudo docker ps
Возможно, он не предоставляет порт из контейнера mysql для localhost (127.0.0.1), поэтому laravel не может подключиться к нему.Найдите имя контейнера mysql, затем измените DB_HOST. Давайте возьмем пример:
app-container 172.0.0.1
mysql-container 172.0.0.2
Поскольку, когда Docker запустится, он создаст для себя виртуальную сеть, а затем откроетваш компьютер. Так что если вы хотите, чтобы laravel мог работать с msql, вам следует изменить DB_HOST на 172.0.0.2 в этом примере.