我正在运行ASP.NET Core容器。此容器将请求发送到由自签名证书ssl加密的api。我需要我的容器信任证书,这样请求才能通过。容器使用microsoft / dotnet:2.1-aspnetcore-runtime作为基础,因此它使用ubuntu。
我尝试了以下方法:
我将证书导出到装有api的服务器上,并使用以下命令使用openssl创建了一个.crt:
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
发生相同的错误。
有人知道我如何将证书添加到CA,以便容器信任它吗?我是否以错误的方式为容器创建了证书?任何帮助将不胜感激。