Você não pode se conectar a
localhost
do Docker (especialmente em um Mac, onde o Docker é executado em uma VM Linux sob a superfície) e espera acessar os serviços fornecidos pela máquina host. No entanto, há funcionalidade para acessar a máquina host por endereço IP usando o nome de host especial
docker.for.mac.localhost
. Ausência de outros problemas de rede do Docker, alterando sua string de conexão para usar docker.for.mac.localhost:3306
deve resolver esse problema e permitir o acesso aos serviços na máquina host. (Mais detalhes sobre essa solução alternativa estão disponíveis no Documentos do Docker .)