Jag tror att du har ett par problem, det första är att laravel .env-konfigurationen ska peka på MySQL-behållaren, inte localhost
DB_HOST=127.0.0.1
borde vara
DB_HOST=db
Och det andra felet du pratade om är inte relaterat till Docker
det är förmodligen relaterat till ett saknat beroende, du bör köra
composer require doctrine/dbal
Du sa också:
Du bör bygga din bild ovanpå PHP 7/Apache-bilden och lägga till dem i build-dockerfilen, eftersom dina ändringar (php-tillägg, konfigurationer...etc) inte är beständiga. Jag skulle föreslå att du använder Laradock eller någon annan befintlig Laravel/docker-miljö.