Docker + SSL + apache2 + x509
我对我有一个最大的问题:SSL我试图在我的系统中安装一个证书,我的系统有3个容器与stream浪汉pipe理。
数据库(docker)主系统(docker)代理(docker) – 这是一个代理反向
当我尝试安装在我的容器代理,并安装所有证书的文件夹。 我改变了
<Virtualhost> ## SSL directives SSLEngine on SSLCertificateFile "/etc/apache2/ssl/www.mydomain.com.br.crt" SSLCertificateKeyFile "/etc/apache2/ssl/mykey.key" SSLCACertificateFile "/etc/apache2ssl/sslroot.crt" SSLCertificateChainFile "/etc/apach2/ssl/Intermediate.crt" </Virtualhost>
显然,我的证书在path文件夹/ etc / apache2 / ssl /
当我尝试重新启动我的Apache,我的容器“代理”不再运行,他们的状态是停住了。 在我调用docker日志代理:
***[error] Init: Unable to read server certificate from file /etc/apache2/ssl/www.patobragado.gedvic.com.br.key [Thu Aug 06 11:01:02 2015] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag [Thu Aug 06 11:01:02 2015] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error***
有人知道我怎么能解决这个问题?
我需要在服务器上安装这个SSL。
假设您通过正确地将其链接到您的Web服务器容器来启动代理容器,如:
docker run -d --name webserver ... docker run -d --name proxy --link webserver ...
重新启动webserver
容器后,其内部Docker IP地址可能会在重新启动后更改,并且proxy
容器上的/etc/hosts
文件也会自动更新 。 所以我想 ,当proxy
突然连接到一个不同的IP地址,打破SSL。
所以你也需要重新启动你的proxy
(如果可能的话重新初始化SSLconfiguration)。
我还没有testing过。 但是,您也可以尝试在您的proxy
容器上定义重新启动策略 ,如下所示:
docker run -d --name proxy --link webserver --restart=always ...