在Docker容器上使用IIS和asp.net核心web应用程序的最佳实践



我设置了我的ASP。Net Core 3.1 web应用程序,现在我可以运行该映像并启动其容器,并通过本地主机中的kestrel(其独立web服务器(访问我的WebApplication。

现在我的问题是:在实际生产环境中使用应用程序容器和IIS来处理来自web的公共请求的最佳实践是什么?

例如:

在单独的容器中使用IIS并将其连接到我的WebApp容器?

或者将IIS和我的WebApp放在一个容器中?

或者在我的服务器(包含WebApp容器(上使用IIS并将其连接到我的web应用容器?

还是别的什么?

我的问题来自生产环境中的微服务概念。尽管Kestrel被用作快速Web服务器,但IIS有很多东西,而Kestrel没有!

在这里你可以看到更多关于";何时使用带有反向代理的Kestrel";。

在微服务中,使用API网关(如Ocelot或Envoy(重新路由HTTP请求是很重要的,换句话说,API网关是仅展示服务的前端或门面。我们仍然需要一些成熟的web服务器,如IIS或在API网关前使用Kubernetes Ingress(基于Nginx(。(有关更多信息,请参阅此处(

我发现我们可以使用Kubernetes Ingress或IIS到API网关和Internet之间的中间层,以便有更多的选择。因此,我们可以在停靠的容器中使用IIS来处理它(阅读此处(

最新更新