diff --git a/core/src/main/java/org/testcontainers/containers/wait/HostPortWaitStrategy.java b/core/src/main/java/org/testcontainers/containers/wait/HostPortWaitStrategy.java index 77fa9a78e70..3b3098a5372 100644 --- a/core/src/main/java/org/testcontainers/containers/wait/HostPortWaitStrategy.java +++ b/core/src/main/java/org/testcontainers/containers/wait/HostPortWaitStrategy.java @@ -7,6 +7,7 @@ import org.testcontainers.containers.ContainerLaunchException; import org.testcontainers.containers.GenericContainer; import org.testcontainers.dockerclient.ProxiedUnixSocketClientProviderStrategy; +import org.testcontainers.dockerclient.WindowsClientProviderStrategy; import java.net.Socket; import java.util.List; @@ -32,8 +33,7 @@ protected void waitUntilReady() { Callable checkStrategy; - // Special case for Docker for Mac, see #160 - if (isUsingSocketProxyOnMac()) { + if (shouldCheckWithCommand()) { List exposedPorts = container.getExposedPorts(); Integer exposedPort = exposedPorts.stream() @@ -91,8 +91,18 @@ protected void waitUntilReady() { } } - private boolean isUsingSocketProxyOnMac() { - return DockerClientFactory.instance().isUsing(ProxiedUnixSocketClientProviderStrategy.class) - && System.getProperty("os.name").toLowerCase().contains("mac"); + private boolean shouldCheckWithCommand() { + // Special case for Docker for Mac, see #160 + if(DockerClientFactory.instance().isUsing(ProxiedUnixSocketClientProviderStrategy.class) + && System.getProperty("os.name").toLowerCase().contains("mac")) { + return true; + } + + // Special case for Docker for Windows, see #160 + if (DockerClientFactory.instance().isUsing(WindowsClientProviderStrategy.class)) { + return true; + } + + return false; } }