Asp.Net Core 2.2 Docker HTTPS问题

时间:2019-06-16 16:53:16

标签: .net docker asp.net-core docker-compose

当我想在docker下运行我的应用程序(Asp.Net Core 2.2)时遇到问题。

首先,我使用以下方法创建了自签名证书:

  

dotnet dev-certs https -v -ep d:\temp\cert-aspnetcore.pfx -p ufo

之后,我将其复制到cert-aspnetcore.pfx到C:\ Users \ MyUsername.aspnet \ https位置

这是我的docker-compose.yml

version: '3.4'

services:
  testapi.api:
    image: ${DOCKER_REGISTRY-}testapi
    build:
      context: .
      dockerfile: TestApi.Api/Dockerfile

和docker-compose.override.yml

> version: '3.4'
> 
> services:   testapi.api:
>     environment:
>       - ASPNETCORE_ENVIRONMENT=Development
>       - ASPNETCORE_URLS=https://+:443;http://+:80
>       - ASPNETCORE_HTTPS_PORT=44395
>       - ASPNETCORE_Kestrel__Certificates__Default__Password=ufo
>       - ASPNETCORE_Kestrel__Certificates__Default__Path=/root/.aspnet/https/cert-aspnetcore.pfx
>     ports:
>       - "9000:80"
>       - "44395:443"
>     volumes:
>       - ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro
>       - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro

但是当我尝试运行docker-compose up --build我得到:

  

暴击:Microsoft.AspNetCore.Server.Kestrel [0]无法启动Kestrel。   System.InvalidOperationException:无法配置HTTPS端点。   未指定服务器证书,并且是默认开发者   找不到证书。

如果您需要任何信息,请告诉我。非常感谢!

1 个答案:

答案 0 :(得分:0)

我认为您不接受创建的证书。

您可以尝试在cmd或powershell上运行此代码行吗?

dotnet开发人员证书https --trust

https://docs.microsoft.com/en-us/aspnet/core/security/docker-https?view=aspnetcore-3.0