проблемный путь для склада доверенных сертификатов внутри докера с пружинной загрузкой и кафкой - PullRequest
0 голосов
/ 28 февраля 2019

У меня возникла техническая проблема при попытке развернуть приложение весенней загрузки приложения с помощью Docker-контейнера.

org.apache.kafka.common.KafkaException: org.apache.kafka.common.KafkaException: Ошибказагрузить хранилище ключей SSL /tmp/tomcat-docbase.4737956707529585395.8080/deployments/app/certs/kafka.truststore.jks

/ развертывания - это конфигурация моего рабочего каталога в файле dockerfile

я нахожу этостранно, что он выбирает tmp / tomcat docbase, потому что при настройке для другого хранилища доверенных сертификатов он попадает в правильное место.Вот что внутри моего application.yaml

spring:
   kafka:
     bootstrap-servers:localhost:9092
     ssl:
       truststore-location: /deployments/app/certs/kafka-truststore.jks
       truststore-password: test
     consumer:
      group-id: consumerid
server:
   ssl:
    enabled: false
    key-store: /deployments/app/certs/dp--dev.jks
    key-store-password: changeit
    trust-store: /deployments/app/certs/ol-truststore-dev.jks
    trust-store-password: test

это то, чего мне не хватает, или это связано с библиотекой kafka springframework, которую я использую?

1 Ответ

0 голосов
/ 28 февраля 2019

Расположение хранилища доверенных сертификатов - это Spring Resource (classpath: по умолчанию), поэтому он ищет файл в пути к классам.Boot проверяет наличие файла, поэтому я не вижу, как он прошел загрузку без ошибок и передается в Kafka (если только он не находится на пути к классам).Если Boot считает, что это нормально, Кафка тоже должна.

Попробуйте file:/deployments/app/certs/kafka-truststore.jks

...