.NET Core 运行时仅在 Linux

.NET Core Runtime only on Linux

我正在尝试为我们的带有 .NET Core 微服务的 RHEL 服务器找出部署策略。

我希望我们可以在我们的生产系统上使用 .NET Core 运行时而不是 "SDK" 版本。这个想法是运行时的攻击面可能比 SDK 少。

当我调查这两个选项时,我似乎正在下载完全相同的包:

yum install rh-dotnet22 -y

为什么 Microsoft 还要费心在此处进行区分?有什么我不知道的吗?有没有办法只获取运行时而不是 SDK?

区别就是你说的,如果你只想运行应用程序你可以只安装运行时间。

如果要构建应用程序,可以安装 SDK,其中还包括 运行时间。

在网站上确实看起来它们指的是同一个包: https://dotnet.microsoft.com/download/linux-package-manager/rhel/sdk-current https://dotnet.microsoft.com/download/linux-package-manager/rhel/runtime-current

要么他们弄乱了说明,要么他们只提供了一个。

查看 Dockerfile 的 RHEL dotnet 运行time 容器,您可以看到仅安装 运行time 所需的步骤:

https://github.com/redhat-developer/s2i-dotnetcore/blob/f344b26d956638600302b115fcc6693682f592b2/2.2/runtime/Dockerfile.rhel7#L51

运行时间的包看起来只是rh-dotnet22-dotnet-runtime-2.2,但我对RHEL不熟悉所以我不能告诉你这是否是你所需要的。

编辑: 使用来自 Omair Majid

的输入更新了 link
yum install rh-dotnet22-dotnet-runtime-2.2 

这应该可以满足您的要求。我会尝试与 Microsoft 合作更新文档,我也会要求更新我们的 RHEL 7 文档。