Как добавить корневой сертификат CA в образ докера - PullRequest
0 голосов
/ 16 апреля 2019

Я использую контейнер ASP.NET Core.Этот контейнер отправляет запрос в API, который зашифрован с помощью самозаверяющего сертификата.Мне нужен мой контейнер, чтобы доверять сертификату, чтобы запрос прошел.Контейнер использует microsoft / dotnet: 2.1-aspnetcore-runtime в качестве базы, поэтому он использует ubuntu.

Я пробовал следующее:

Я экспортировал сертификат на сервер, который содержит APIи создал .crt с openssl с помощью следующей команды:

openssl pkcs12 -in exportedcert.pfx -clcerts -nokeys -out my.crt

Затем я добавил в свой Dockerfile следующее:

ADD /my.crt /usr/local/share/ca-certificates/my.crt
RUN chmod 644 /usr/local/share/ca-certificates/my.crt && update-ca-certificates

Изображение скомпоновано отлично, но мое приложение по-прежнему выдает:«AuthenticationException: удаленный сертификат недействителен в соответствии с процедурой проверки.»

После этого я попытался добавить это в Dockerfile:

RUN apt-get update && apt-get install -y ca-certificates
COPY /my.crt /usr/local/share/ca-certificates/my.crt
RUN update-ca-certificates

Произошла та же ошибка.

Кто-нибудь знает, как я могу добавить сертификат в ЦС, чтобы контейнер доверял ему?Я создал сертификат для контейнера неправильно?Любая помощь с благодарностью.

...