Ihr Docker-Container sollte in der Lage sein, seinen MySQL-Port an jeden Port auf der VM zu binden. Das machst du mit dem -p VMPort:containerPort
Option von docker run
.
https://docs.docker.com/engine/reference/ run/#expose-incoming-ports
Also dieser Befehl
docker run -p 3306:3306 your-sql-container
Veröffentlicht den 3306-Port Ihres Containers auf dem 3306-Port Ihrer VM.
An diesem Punkt sollten Sie in der Lage sein, Ihr SQL mit
zu treffenConnection con = DriverManager.getConnection("jdbc:mysql://10.0.2.15:3306/databaseName","root","myrootpassword");
Ich habe Ihre VM-Adresse und den gebundenen Port auf der VM verwendet. Sie sollten databaseName
ersetzen mit dem tatsächlichen Namen Ihrer DB.