在 Docker 容器中托管 ASP.NET Core

下面的文章可用于了解如何在 Docker 中托管 ASP.NET Core 应用:

容器和 Docker 简介
容器化是软件开发的一种方法,通过该方法可将应用程序或服务、其依赖项及其配置一起打包为容器映像。了解相关内容。 可对该映像进行测试,然后将其部署到主机。

什么是 Docker
了解如何将 Docker 作为一种开源项目,用于将应用自动部署为可在云或本地运行的便携式独立容器。

Docker 术语
了解 Docker 技术的术语和定义。

Docker 容器、映像和注册表
了解如何将 Docker 容器映像存储在映像注册表中,以实现跨环境的一致部署。

ASP.NET Core 的 Docker 映像了解如何生成和 Docker 化 ASP.NET Core 应用。 了解由 Microsoft 维护的 Docker 映像并检查用例。

.NET Docker 示例演示如何使用 .NET 和 Docker 进行开发、测试和生产的示例和指南。

Visual Studio 容器工具
了解 Visual Studio 如何支持在用于 Windows 的 Docker 上生成、调试和运行面向 .NET Framework 或 .NET Core 的 ASP.NET Core 应用。 Windows 和 Linux 容器均受支持。

发布到 Azure 容器注册表
了解如何通过 Visual Studio 容器工具扩展使用 PowerShell 将 ASP.NET Core 应用部署到 Azure 上的 Docker 主机。

配置 ASP.NET Core 以使用代理服务器和负载均衡器
对于托管在代理服务器和负载均衡器后方的应用,可能需要附加配置。 通过代理传递的请求通常会遮盖初始请求相关信息,例如方案和客户端 IP。 可能必须将请求相关的一些信息手动转发给应用。

使用 Docker 和小型容器的 GC 讨论了包含小型容器的 GC 选择。

System.IO.IOException:已达到配置的 inotify 实例数用户限制 (128)

禁用 reloadOnChange 可以显著减少打开的文件数。 若要禁用重新加载配置文件,请设置环境变量 DOTNET_HOSTBUILDER__RELOADCONFIGONCHANGE=false

有关替代方法或留下关于此问题的反馈,请参阅此 GitHub 问题