我正在使用Jenkins 1.566版和Artifactory插件2.2.2版。
我在自己的码头容器中运行人工制品2.66。它以http运行,但最近我将其更改为https。
现在,如果我将Jenkins配置中的工件服务器URL从http更改为https和端口8443,则会收到错误消息:
"Error occurred while requesting version information: peer not authenticated"
如果我转到https url并使用相同的用户名和密码登录成功。为什么会发生此错误,以及如何解决?
任何帮助表示赞赏。
导致此错误的原因是对Artifactory服务器使用了自签名证书,但Jenkins JVM无法识别该证书。使用自签名证书时,这是一个常见问题。 要解决此问题,您将需要将自签名证书导入到Jenkins使用的信任库中(通过用于运行Jenkins的JRE),例如:
<JAVA_HOME>\bin\keytool -import -v -trustcacerts -alias server-alias -file server.cer -keystore /path/to/cacerts -keypass changeit -storepass changeit
在此示例中: server.cer是您为Artifactory生成的自签名证书。 cacerts是用于詹金斯的信任库。默认情况下,您应该在JRE- 中找到一个<JRE_HOME>/lib/security/cacerts。请注意,这与Artifactory使用的密钥库不同。 请注意,默认密钥库密码为changeit。有关更多信息,请查看keytool的Oracle文档。
server.cer
cacerts
<JRE_HOME>/lib/security/cacerts