Eu revisei a documentação e o código-fonte, mas não encontrei uma explicação por que ouvir e anunciar portas diferentes é problemático.
Eu resolvi o problema usando
--port 3301
ao invocar o servidor mysql:docker run --name=db2 -p 3301:3301 -v db2:/var/lib/mysql -d mysql/mysql-server --report-host=139.59.11.215 --port 3301