Myslím, že máte několik problémů, první je, že konfigurace laravel .env by měla ukazovat na kontejner MySQL, nikoli na localhost
DB_HOST=127.0.0.1
by měl být
DB_HOST=db
A další chyba, o které jste mluvil, nesouvisí s Docker
pravděpodobně to souvisí s chybějící závislostí, měli byste spustit
composer require doctrine/dbal
Také jste řekli:
Měli byste vytvořit svůj obrázek na obrázku PHP 7/Apache a přidat je do souboru build dockerfile, protože vaše změny (rozšíření php, konfigurace...atd.) nejsou trvalé. Navrhoval bych, abyste použili Laradock nebo jakékoli jiné existující prostředí Laravel/docker.