【发布时间】:2020-07-07 18:58:07
【问题描述】:
我在spring cloud环境中使用feign客户端遇到了一个奇怪的问题。
我使用 feign 客户端连接到外部 HTTPS url 以进行 REST 调用。 问题是,每天晚上,服务器都会停止 docker 服务来备份卷。在此之后,早上,我得到了
feign.RetryableException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target executing POST
我以为是关于证书的,所以第一步是使用 keytool 将证书导入 docker 容器 java cacerts 文件(openjdk-8)。 (重启容器后工作,但早上仍然出错)
我仍然在夜间丢失证书,所以我为商店创建了一个持久卷(结果相同)。
我在开发服务器上意识到,即使没有将证书导入容器,在重新启动 docker 容器后我也不会再收到错误消息(只是 docker restart {container},仅此而已)。
所以,每天早上重新启动容器后,一切运行顺利。如果我不重新启动,我会收到错误消息。 我想了解那里发生了什么,所以我对想法持开放态度。 谢谢!
【问题讨论】:
标签: java docker ssl-certificate spring-cloud spring-cloud-feign