Я создал образ Docker, используя Open Liberty и мое собственное приложение, которое будет размещено в Azure в качестве службы веб-приложений. Все работает нормально, за исключением случаев, когда я пытаюсь получить доступ к другому контроллеру, расположенному на Azure (https://mycontrollerurl.azurewebsites.net/....) Я вижу ошибку из журналов: -
[ОШИБКА] CWPKI0022E: СБОЙ SSL HANDSHAKE: Подписчик с SubjectDN CN = *. Azurewebsites.net был отправлен с целевого хоста. Может потребоваться добавить подписавшего в локальное хранилище доверия /opt/ol/wlp/output/defaultServer/resources/security/key.p12, расположенное в псевдониме конфигурации SSL defaultSSLConfig. Расширенное сообщение об ошибке из исключения SSL-рукопожатия: сбой построения пути PKIX: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl не удалось создать действительный CertPath .; Внутренняя причина:
2019-04-27T15: 44: 49.047295297Z java.security.cert.CertPathValidatorException: сертификат, выданный CN = Baltimore CyberTrust Root, OU = CyberTrust, O = Балтимор, C = IE не является доверенным; Внутренняя причина:
Может ли кто-нибудь помочь мне, как я могу создать свой файл SERVER.xml для включения сертификата и любых других шагов, которые мне нужно выполнить? Мне всего 2 дня, я новичок в Liberty и пытаюсь решить проблему для моей команды разработчиков. Подскажите, пожалуйста, как я могу решить эту проблему CERT?
ОБНОВЛЕНИЕ: ВОПРОС РАЗРЕШЕН (спасибо Брюсу за указание на меня): -
1. Мне пришлось скачать сертификат Azurewebsite (очень просто сделать это из браузера), все шаги из статьи вы можете получить здесь
2. Сохраните этот файл сертификата Azurewebsites в тот же каталог, в котором находится мой DOCKERFILE.
3. Измените мой DOCKERFILE, чтобы он выглядел следующим образом:
++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++
ОТ открытой свободы: webProfile8
COPY --chown = 1001: 0 server.xml / config /
COPY --chown = 1001: 0 ancConnector-Liberty.war / config / dropins /
# Добавьте сертификат Azure, чтобы включить HTTPS-соединение.
COPY --chown = 1001: 0 azurewebsites.cer
Opt / ол / WLP / выход / DefaultServer / ресурсы / безопасность /
WORKDIR / opt / ol / wlp / output / defaultServer / resources / security /
RUN keytool -noprompt -importcert -file azurewebsites.cer -alias
azurewebsites -keystore key.jks -storepass Liberty -стоп тип jks`
++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++
Вот и все, создайте образ, и мы готовы к работе! Все работает сейчас! Надеюсь, это поможет кому-то в будущем.