Se il tuo host Docker MySQL funziona correttamente, puoi connetterti ad esso dalla macchina locale, ma dovresti specificare host, porta e protocollo in questo modo:
mysql -h localhost -P 3306 --protocol=tcp -u root
Cambia 3306 con il numero di porta che hai inoltrato dal container Docker (nel tuo caso sarà 12345).
Poiché stai eseguendo MySQL all'interno del contenitore Docker, il socket non è disponibile e devi connetterti tramite TCP. L'impostazione di "--protocol" nel comando mysql lo cambierà.