使用TLS

两者都是主要的 DockerClient 和低级 APIClient 可以使用TLS连接到Docker守护程序。

如果您使用的是 from_env() ,但是如果您需要一些额外的控制,则可以使用 TLSConfig 对象。

示例

例如,要根据特定的CA证书检查服务器,请执行以下操作:

tls_config = docker.tls.TLSConfig(ca_cert='/path/to/ca.pem', verify=True)
client = docker.DockerClient(base_url='<https_url>', tls=tls_config)

这相当于 docker --tlsverify --tlscacert /path/to/ca.pem ...

要使用客户端证书进行身份验证,请执行以下操作:

tls_config = docker.tls.TLSConfig(
  client_cert=('/path/to/client-cert.pem', '/path/to/client-key.pem')
)
client = docker.DockerClient(base_url='<https_url>', tls=tls_config)

这相当于 docker --tls --tlscert /path/to/client-cert.pem --tlskey /path/to/client-key.pem ...

参考文献

class TLSConfig

TLS配置。

参数:
  • client_cert (tuple of str) -- 客户端证书的路径、客户端密钥的路径。

  • ca_cert (str) -- CA证书文件的路径。

  • verify (bool or str) -- 这可以是用于验证的CA证书文件的布尔值或路径。如果 True ,使用ca_cert进行验证;如果 False 或未指定,则不进行验证。