【问题标题】:Unable to download plugin in Jenkins set up on docker container无法在 Docker 容器上设置的 Jenkins 中下载插件
【发布时间】:2022-05-13 17:38:30
【问题描述】:

我已经在笔记本电脑的 docker 容器中设置了 Jenkins。但是安装后,无法插入任何插件。下面是错误。使用的 jenkins 的 Docker 镜像是 jenkins/jenkins:2.289.1-lts-jdk11。

docker linux 容器是在 Windows 10 笔记本电脑中设置的。我已经做了一些变通方法,比如将路径更新为 http://updates.jenkins.io/update-center.json 而不是 https,并将 skip-certificate-check.hpi 放在插件路径中。

但这些对以下错误没有帮助。

sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
    at java.base/sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
    at java.base/java.security.cert.CertPathBuilder.build(CertPathBuilder.java:297)
    at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:434)
Caused: sun.security.validator.ValidatorException: PKIX path building failed
    at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:439)
    at java.base/sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:306)
    at java.base/sun.security.validator.Validator.validate(Validator.java:264)
    at java.base/sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:313)
    at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:222)
    at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:129)
    at 

【问题讨论】:

  • 看起来您的 java 不信任它所提供的证书?

标签: java docker jenkins containers jenkins-plugins


【解决方案1】:

在您信任的密钥库中添加服务器的根证书。
注意:storepass 通常是“changeit”

sudo keytool -importcert -keystore <keystore-path>/cacerts -storepass <password> -file <server's root .crt file path> -alias "jenkins-updates"

重启并检查。

如果服务器根证书不可用,请使用以下命令将其加载到文件“root.crt”中:
(也有手动获取服务器证书的方法,这里就不通过了。)

  • 将网址“https://updates.jenkins.io/update-center.json”粘贴到网站https://www.ssllabs.com/ssltest/analyze.html 并下载服务器证书并将其保存为root.crt
  • 在上述 importcert 命令中使用此文件路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    • 2021-11-04
    • 2019-12-19
    • 1970-01-01
    相关资源
    最近更新 更多