Добавьте самозаверяющий сертификат в хранилище ключей Java в Artifactory, когда он запускается в Docker - PullRequest
0 голосов
/ 11 марта 2019

Я использую артефакт как докер-контейнер в нашей среде, используя docker-compose, более или менее равный официальному: https://github.com/jfrog/artifactory-docker-examples/blob/master/docker-compose/artifactory/artifactory-pro.yml

При добавлении удаленного репозитория я обнаружил, что сертификат, используемый удаленным, не является доверенным для моего сервера-артефакта:

Connection to remote repository failed: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Насколько я знаю, мне нужно добавить самозаверяющий корневой сертификат, который используется сервером, необходимо добавить в хранилище ключей используемого jvm, который запускает артефакт. Я нашел все учебные пособия, которые показывают, как это сделать при обычной установке, но ни одного из них, как сделать это в контейнере Docker. Я мог бы попытаться выполнить в контейнер, но это не похоже на правильный путь.

Кто-нибудь знает, как добавить самозаверяющий сертификат в хранилище ключей cacert внутри контейнера документооборота как часть сценария docker-compose?

1 Ответ

0 голосов
/ 21 июня 2019

В ТЕОРИИ вы можете сохранить файл хранилища ключей на своем хосте, а затем смонтировать его в контейнер с параметром -v.

Вам также необходимо заставить JVM артефакта использовать ваше новое хранилище ключей. Сделайте это, передав "-e JAVA_OPTIONS = -Djavax.net.ssl.trustStore =" команде docker create / run.

...