@@ -52,15 +52,16 @@ def __init__(self, base_url=None, version=None,
52
52
53
53
base_url = utils .parse_host (base_url )
54
54
if base_url .startswith ('http+unix://' ):
55
- unix_socket_adapter = unixconn .UnixAdapter (base_url , timeout )
56
- self .mount ('http+docker://' , unix_socket_adapter )
55
+ self . _adapter = unixconn .UnixAdapter (base_url , timeout )
56
+ self .mount ('http+docker://' , self . _adapter )
57
57
self .base_url = 'http+docker://localunixsocket'
58
58
else :
59
59
# Use SSLAdapter for the ability to specify SSL version
60
60
if isinstance (tls , TLSConfig ):
61
61
tls .configure_client (self )
62
62
elif tls :
63
- self .mount ('https://' , ssladapter .SSLAdapter ())
63
+ self ._adapter = ssladapter .SSLAdapter ()
64
+ self .mount ('https://' , self ._adapter )
64
65
self .base_url = base_url
65
66
66
67
# version detection needs to be after unix adapter mounting
@@ -243,6 +244,14 @@ def _multiplexed_response_stream_helper(self, response):
243
244
def api_version (self ):
244
245
return self ._version
245
246
247
+ def get_adapter (self , url ):
248
+ try :
249
+ return super (Client , self ).get_adapter (url )
250
+ except requests .exceptions .InvalidSchema as e :
251
+ if self ._adapter :
252
+ return self ._adapter
253
+ raise e
254
+
246
255
@check_resource
247
256
def attach (self , container , stdout = True , stderr = True ,
248
257
stream = False , logs = False ):
0 commit comments