连接到由dockercloud-agentpipe理的docker主机

我有一个Docker主机,我使用Docker Cloud,现在我想从另一个Docker客户端连接到这个主机。 但是我遇到了必要的SSL证书问题。

主机使用(并应该继续这样做)TLS客户端validation。 我自己并没有build立到Docker Cloud的连接,但是看起来像是使用了dockercloud-agent (这个过程在https://docs.docker.com/docker-cloud/infrastructure/byoh/中有描述)。 (Docker Cloud与我们的节点正常工作)。

为了从另一个docker客户端连接到主机,该客户端必须为主机提供一个有效的证书,该证书必须由主机信任的CA签名(根据文档https://docs.docker.com / engine / security / https / )。 所以我可以:

  1. 使用Docker云使用的相同的客户端证书。 问题:我无权访问这些证书,也没有关于它们存储位置的文档。
  2. 创build一个新的客户端证书,并使用dockercloud-agent已经使用的CAcert对其进行签名,以签署其客户端证书。 问题:我无法访问CA密钥,也没有关于存储位置的文档。

在主机上留下的所有dockercloud-agent是服务器的ca.pemcert.pemkey.pem ,但没有ca-key.pem

我该怎么办? 我在这里错过了什么?

为了进行testing,我build立了另一个docker主持人,带有tlsverify和所有合适的证书,并且工作,所以我想我理解所有这些证书是如何工作的。

哦,另外:当试图远程连接到主机而不提供证书(但指定主机使用的cacert)时,我希望服务器抱怨无法validation客户端。 但是,客户报告x509: certificate signed by unknown authority 。 这可能表明dockercloud-agent在设置证书时做了一些奇怪的事情。

 docker --tlsverify --tlscacert=ca.pem -H=$HOST info error during connect: Get https://$HOST/v1.27/info: x509: certificate signed by unknown authority 

提前致谢!