One of the most mistaken things out there when people say Docker for MAC is slow,
is because they use bind-mounting with a huge number of files (assets, caches, and more).
And yes, Shopware and also Symfony have lots of these files.
In Linux it works better, but shouldn't we just make a step back and focus on what the problem is?!
Docker offers us a way of running a separate and isolated system on our host machine.
In combination with lots of deeper integrations such as "docker cp", "docker exec", "bind-mounting" and more, we tend to think we really need these things. And that's the problem!
Our best practice is to use SSH/SFTP and strictly avoid any bind-mounting and anything that shares files between your host and your container!