SSL:如何在docker容器中访问HTTPS

时间:2016-06-30 15:07:21

标签: ssl docker

我对SSL证书/握手不太熟悉,现在我遇到了一个大问题。

我希望能够访问docker容器中的URL https://myhost:443/。 URL在apache virtualhost中定义,它使用带有证书httpd.crt:

的HTTPS
    SSLCertificateFile /etc/pki/certs/httpd.crt
    SSLCertificateKeyFile /etc/pki/private/httpd.key

但是当我尝试访问docker容器中的https://myhost:443/api时,我明白了:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

基本上我无权进行SSL连接,因为我没有容器中的证书。

我的问题是,如何使HTTPS连接正常工作?我是否需要在容器中放入相同的证书(httpd.crt)?我应该把它放在哪里?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

关注this link,我会说你有两种方式:

  1. 您可以使用已添加认证的JAVA_HOME/jre/lib/security/cacerts文件创建一个泊坞窗图片。

  2. 或者,如果在这种情况下安全性不重要,您可以在容器创建docker run -e JAVA_OPTS='-Djavax.net.ssl.trustStore' <image-name>上传递java vm一些参数。我是从here

  3. 获取的

    希望这有帮助。