如何向Dockerfile中的Jenkins for LDAPS添加SSL自签名证书?

我想在Jenkins的安全性下启用LDAPS,但是我的LDAP服务器有一个自签名的CERT。 有没有人做过这个或有一些指针呢? 我必须使用keytool吗?

在我的Dockerfile中,我正在尝试以下,但是这不起作用:

FROM jenkins USER root # Install CA certs COPY ca-certificates.crt /etc/ssl/certs/ca-certificates.crt RUN chmod +r /etc/ssl/certs/ca-certificates.crt # Install the Jenkins plugin COPY plugins.txt /usr/share/jenkins/plugins.txt RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt # Expose container port 33838 for Jenkins UDP-based auto-discovery EXPOSE 33848/udp ENV JAVA_OPTS -Xmx2048m 

事实certificate我只需要在Dockerfile中添加这个,其中ldap.cer是我自签名证书的证书链。

 COPY ldap.cer $JAVA_HOME/jre/lib/security RUN \ cd $JAVA_HOME/jre/lib/security \ && keytool -keystore cacerts -storepass changeit -noprompt -trustcacerts -importcert -alias ldapcert -file ldap.cer 

运行keytool将CA证书导入到您的Java密钥库中。

看到:

告诉java接受自签名的ssl证书

jenkinsnexussonarqube的构build服务器上,我们使用docker run的start参数在主机上使用提取并准备好的cacerts文件。

看到我在Stackoverflow上的答案“将自签名证书导入到Docker的JRE cacert不被服务识别”