@@ -46,7 +46,8 @@ public class WindowsDockerProvider extends DockerProvider {
4646
4747 public WindowsDockerProvider () {
4848 this .instanceId = UUID .randomUUID ().toString ().substring (0 , 8 );
49- this .instanceDir = DOCKER_DIR .resolve ("instances" ).resolve (instanceId );
49+ Path baseDir = getBaseDirectory ();
50+ this .instanceDir = baseDir .resolve ("instances" ).resolve (instanceId );
5051 this .pipeName = "docker_java_" + instanceId ;
5152 this .dockerPipePath = Paths .get ("\\ \\ .\\ pipe\\ " + pipeName );
5253 this .dataDir = instanceDir .resolve ("data" );
@@ -255,9 +256,11 @@ private void startWsl2Docker() throws IOException, InterruptedException {
255256 }
256257 log .debug ("WSL home directory: {}" , wslHome );
257258
258- String wslDataDir = wslHome + "/.docker-java/instances/" + instanceId + "/data" ;
259- String wslExecDir = wslHome + "/.docker-java/instances/" + instanceId + "/exec" ;
260- String wslPidFile = wslHome + "/.docker-java/instances/" + instanceId + "/docker.pid" ;
259+ String wslBase = getWslBaseDirectory ();
260+ String wslBaseDir = wslHome + "/" + wslBase + "/instances/" + instanceId ;
261+ String wslDataDir = wslBaseDir + "/data" ;
262+ String wslExecDir = wslBaseDir + "/exec" ;
263+ String wslPidFile = wslBaseDir + "/docker.pid" ;
261264
262265 log .debug ("Creating directories in WSL2 (distro: {})..." , wslDistro );
263266 String mkdirResult = runWslCommand ("mkdir -p " + wslDataDir + " " + wslExecDir + " && echo ok" , false , 10 );
@@ -574,9 +577,10 @@ public void stop() {
574577 if (dockerProcess != null ) {
575578 if (usingWsl2 && wslDistro != null ) {
576579 try {
580+ String wslBase = getWslBaseDirectory ();
577581 ProcessBuilder pb = new ProcessBuilder ("wsl" , "-d" , wslDistro , "-e" , "bash" , "-c" ,
578582 "sudo -n pkill -f 'dockerd.*" + dockerPort + "' 2>/dev/null ; " +
579- "rm -rf ~/.docker-java /instances/" + instanceId );
583+ "rm -rf ~/" + wslBase + " /instances/" + instanceId );
580584 pb .start ().waitFor (5 , TimeUnit .SECONDS );
581585 } catch (IOException | InterruptedException e ) {
582586 log .warn ("Failed to stop WSL2 Docker daemon: {}" , e .getMessage ());
0 commit comments