Eu acho que você tem alguns problemas, o primeiro é que a configuração do laravel .env deve apontar para o contêiner MySQL, não localhost
DB_HOST=127.0.0.1
deveria estar
DB_HOST=db
E o outro erro que você falou, não está relacionado ao Docker
provavelmente está relacionado a uma dependência ausente, você deve executar
composer require doctrine/dbal
Além disso, você disse:
Você deve construir sua imagem em cima da imagem PHP 7/Apache, e adicioná-las ao arquivo docker de compilação, porque suas alterações (extensões php, configurações... etc) não são persistentes. Eu sugiro que você use Laradock ou qualquer outro ambiente Laravel/docker existente.