diff --git a/src/main/java/com/github/dockerjava/core/DockerClientConfig.java b/src/main/java/com/github/dockerjava/core/DockerClientConfig.java index 6187be49c..048612462 100644 --- a/src/main/java/com/github/dockerjava/core/DockerClientConfig.java +++ b/src/main/java/com/github/dockerjava/core/DockerClientConfig.java @@ -65,7 +65,7 @@ public class DockerClientConfig implements Serializable { private static final String DOCKER_IO_PROPERTIES_PROPERTY = "docker.io.properties"; - private URI uri; + private final URI uri; private final String username, password, email, serverAddress, dockerCfgPath; @@ -208,10 +208,6 @@ public URI getUri() { return uri; } - public void setUri(URI uri) { - this.uri = uri; - } - public RemoteApiVersion getVersion() { return version; } diff --git a/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java b/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java index ceddb8af4..7e61a0bf8 100644 --- a/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java +++ b/src/main/java/com/github/dockerjava/jaxrs/DockerCmdExecFactoryImpl.java @@ -153,9 +153,7 @@ public void init(DockerClientConfig dockerClientConfig) { protocol = "http"; } - if(originalUri.getScheme().equals("unix")) { - dockerClientConfig.setUri(UnixConnectionSocketFactory.sanitizeUri(originalUri)); - } else { + if(!originalUri.getScheme().equals("unix")) { configureProxy(clientConfig, protocol); } @@ -181,9 +179,16 @@ public void init(DockerClientConfig dockerClientConfig) { client = clientBuilder.build(); - baseResource = client.target(dockerClientConfig.getUri()).path(dockerClientConfig.getVersion().asWebPathPart()); + baseResource = client.target(sanitizeUrl(dockerClientConfig.getUri())).path(dockerClientConfig.getVersion().asWebPathPart()); } + private URI sanitizeUrl(URI originalUri) { + if (originalUri.getScheme().equals("unix")) { + return UnixConnectionSocketFactory.sanitizeUri(originalUri); + } + return originalUri; + } + private void configureProxy(ClientConfig clientConfig, String protocol) { List proxies = ProxySelector.getDefault().select(dockerClientConfig.getUri());