Twój kontener Docker powinien być w stanie powiązać swój port mysql z dowolnym portem na maszynie wirtualnej. Robisz to za pomocą -p VMPort:containerPort
opcja docker run
.
https://docs.docker.com/engine/reference/ run/#expose-incoming-ports
Więc to polecenie
docker run -p 3306:3306 your-sql-container
Opublikuje port 3306 Twojego kontenera w porcie 3306 Twojej maszyny wirtualnej.
W tym momencie powinieneś być w stanie trafić w swój SQL za pomocą
Connection con = DriverManager.getConnection("jdbc:mysql://10.0.2.15:3306/databaseName","root","myrootpassword");
Użyłem twojego adresu maszyny wirtualnej i powiązanego portu na maszynie wirtualnej. Powinieneś zastąpić databaseName
z rzeczywistą nazwą Twojej bazy danych.