主机ASP.NET核心有多个版本的dotnet运行时,如Django的virtualenv?

时间:2017-07-25 14:28:19

标签: asp.net-core

我有一台运行CentOS 7.1和Apache的虚拟机来运行ASP.NET Core 1.1应用程序。 我想让个别Web应用程序使用它自己的目标运行时。 例如:

eShop Web-> dotnet core 1.0

Blog Web - > dotnet核心1.1

测试网站 - > 2.0.0 beta ...

我阅读了一些帖子并建议使用docker,但我的VM只有8GB ram并限制CPU功率,所以我看起来像是Django虚拟环境,以便针对每个应用程序定位不同的版本。

谢谢你。

1 个答案:

答案 0 :(得分:4)

您无需任何特殊工具即可实现此目的。 .NET Core支持并行安装。

dotnet通过使用(appname).runtimeconfig.json文件的内容选择要使用的运行时的方式。 SDK会在您构建应用程序时生成此文件。如果编译为“netcoreapp1.0”,则构建输出将包含此文件,它应如下所示:

{
  "runtimeOptions": {
    "framework": {
      "name": "Microsoft.NETCore.App",
      "version": "1.0.4"
    }
  }
}

如果您已将dotnet安装到/usr/share/dotnet/,当您执行“dotnet app.dll”时,它将从/usr/share/dotnet/shared/Microsoft.NETCore.App/1.0.4/

加载运行时

有关此文件的详细信息,请参阅https://github.com/dotnet/cli/blob/rel/1.0.1/Documentation/specs/runtime-configuration-file.md