C# asp.net-core 2.0无法配置HTTPS端点

C# asp.net-core 2.0无法配置HTTPS端点,c#,asp.net,linux,C#,Asp.net,Linux,我在asp.net-core 2.0 preview1中开发了应用程序。我用Visual Studio 2017在windows上开发了它 现在我想使用Docker将其部署到Linux服务器 我在windows上创建了Docker映像 Docker文件是: FROM microsoft/aspnetcore:2.0 ARG source WORKDIR /app EXPOSE 44305 COPY ${source:-obj/Docker/publish} . ENTRYPOINT ["dotn

我在asp.net-core 2.0 preview1中开发了应用程序。我用Visual Studio 2017在windows上开发了它

现在我想使用Docker将其部署到Linux服务器

我在windows上创建了Docker映像

Docker文件是:

FROM microsoft/aspnetcore:2.0
ARG source
WORKDIR /app
EXPOSE 44305
COPY ${source:-obj/Docker/publish} .
ENTRYPOINT ["dotnet", "Application.Web.dll"]
然后运行命令:

dotnet build -o obj/Docker/publish -c Release
dotnet publish -o obj/Docker/publish -c Release
docker build -t testapi-api .
然后我使用Docker在linux服务器上对映像进行了解压缩并运行它:

docker run -p 44305:80 --name api testapi-api
但我得到了一个错误:

Unhandled Exception: System.InvalidOperationException: Unable to configure HTTPS endpoint. For information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054. ---> System.Collections.Generic.KeyNotFoundException: No certificate named 'HTTPS' found in configuration for the current environment (Production).
       at Microsoft.AspNetCore.CertificateLoader.LoadSingle(String certificateName)
       at Microsoft.AspNetCore.CertificateLoader.Load(IConfigurationSection certificateConfiguration)
       at Microsoft.AspNetCore.KestrelServerOptionsSetup.<>c__DisplayClass6_0.<BindEndPoint>b__0(ListenOptions listenOptions)
       --- End of inner exception stack trace ---
       at Microsoft.AspNetCore.KestrelServerOptionsSetup.<>c__DisplayClass6_0.<BindEndPoint>b__0(ListenOptions listenOptions)
       at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerOptions.Listen(IPEndPoint endPoint, Action`1 configure)
       at Microsoft.AspNetCore.KestrelServerOptionsSetup.BindEndPoint(KestrelServerOptions options, IConfigurationSection endPoint, CertificateLoader certificateLoader)
       at Microsoft.AspNetCore.KestrelServerOptionsSetup.BindConfiguration(KestrelServerOptions options)
       at Microsoft.Extensions.Options.LegacyOptionsCache`1.CreateOptions()
       at System.Threading.LazyInitializer.EnsureInitializedCore[T](T& target, Boolean& initialized, Object& syncLock, Func`1 valueFactory)
       at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.CreateServiceContext(IOptions`1 options, ILoggerFactory loggerFactory)
       at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer..ctor(IOptions`1 options, ITransportFactory transportFactory, ILoggerFactory loggerFactory)
    --- End of stack trace from previous location where exception was thrown ---
       at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
       at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProvider provider)
       at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProvider provider)
       at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
       at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
       at Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureServer()
       at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()
       at Microsoft.AspNetCore.Hosting.WebHostBuilder.Build()
       at XTrader.Web.Program.Main(String[] args) in C:\wamp64\www\app\Application.Web\Program.cs:line 17
未处理的异常:System.InvalidOperationException:无法配置HTTPS端点。有关配置HTTPS的信息,请参阅https://go.microsoft.com/fwlink/?linkid=848054. ---> System.Collections.Generic.KeyNotFoundException:在当前环境(生产环境)的配置中未找到名为“HTTPS”的证书。
位于Microsoft.AspNetCore.CertificateLoader.LoadSingle(字符串certificateName)
在Microsoft.AspNetCore.CertificateLoader.Load(IConfigurationSection certificateConfiguration)
在Microsoft.AspNetCore.kestrelserver options setup.c_uu显示Class6_0.b_u0(ListenOptions ListenOptions)
---内部异常堆栈跟踪的结束---
在Microsoft.AspNetCore.kestrelserver options setup.c_uu显示Class6_0.b_u0(ListenOptions ListenOptions)
位于Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerOptions.Listen(IPEndPoint端点,操作'1配置)
在Microsoft.AspNetCore.KestrelServerOptions setup.BindEndPoint(KestrelServerOptions选项、IConfigurationSection端点、CertificateLoader CertificateLoader)
位于Microsoft.AspNetCore.kestrelserver选项setup.BindConfiguration(kestrelserver选项)
在Microsoft.Extensions.Options.LegacyOptionsCache`1.CreateOptions()中
在System.Threading.LazyInitializer.EnsureInitializedCore[T](T&target,Boolean&initialized,Object&syncLock,Func`1 valueFactory)
位于Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.CreateServiceContext(IOOptions`1选项,ILoggerFactory loggerFactory)
位于Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer..ctor(IOptions`1选项、ITransportFactory transportFactory、ILoggerFactory loggerFactory)
---来自引发异常的上一个位置的堆栈结束跟踪---
在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()中
位于Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite ConstructorCallSite,ServiceProvider提供程序)
位于Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite ScopedCallSite,ServiceProvider提供程序)
位于Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider提供程序,键入serviceType)
位于Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider提供程序)
在Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureServer()上
在Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()上
在Microsoft.AspNetCore.Hosting.WebHostBuilder.Build()上
位于C:\wamp64\www\app\Application.Web\Program.cs中的XTrader.Web.Program.Main(字符串[]args):第17行
我听从了他的指示,但也不确定我是否做得很好

试图创建
certificate.pfx
并将其添加到项目中,但似乎不起作用


如果有人能帮助我找出在部署到linux服务器时如何使其在这种情况下工作。

检查此问题是否与您的问题有关是的,此问题相关,但他们的答案是:“是的,这是Preview 1中的一个巨大差距,我们没有一种简单的方法在非Windows平台上为HTTPS设置开发证书。您必须使用openssl手动设置一个(请参阅)。“正如我在questino中所说,我尝试了此链接中的指令,但无法使其工作。您是否检查了
ASPNETCORE\u ENVIRONMENT=“Development”“
有什么不同吗?是的,我一直都在设置它。启用SSL您已经找到解决此问题的方法了吗?我也犯了同样的错误。