如何在 docker 中安装 .net 框架?

Posted

技术标签:

【中文标题】如何在 docker 中安装 .net 框架?【英文标题】:How to install .net Framework in docker? 【发布时间】:2020-08-26 05:04:12 【问题描述】:

我想在 microsoft/dotnet:latest 映像中安装 donet Framework 4.6.1(.net core 需要此映像,但我还需要框架)

【问题讨论】:

【参考方案1】:

首先,建议更新您的标记用法以引用 MCR 位置(请参阅 https://github.com/dotnet/announcements/issues/101),因为 microsoft/dotnet:latest 不再更新,仍然指向 .NET Core 2.1 而不是 3.1。因此,如果您想要最新的 .NET Core 映像,建议使用mcr.microsoft.com/dotnet/sdk:3.1。请参阅Docker Hub page 了解所有支持的标签。

其次,.NET Core Docker 映像仅适用于 Windows Nano Server,它是 Windows Server Core 的子集。 .NET Framework 至少需要 Windows Server Core。因此,无法将 .NET Framework 安装到使用 Nano Server 的 .NET Core 映像上。现有的proposal 也可以发布基于 Windows Server Core 构建的 .NET Core 映像,但目前不存在此类映像。 [编辑:.NET 5.0 的图像是now available on Windows Server Core 2019]

更有意义的是从构建在 Windows Server Core 上的 .NET Framework Docker image 开始,然后向其中添加 .NET Core 3.1。有关如何在 Dockerfile 中安装 .NET Core 的指南,请访问 https://github.com/dotnet/dotnet-docker/blob/master/documentation/scenarios/installing-dotnet.md。你真的需要 4.6.1 还是 4.6.2 就足够了?因为 4.6.2 只有一个受支持的 Docker 映像,而 4.6.1 没有。受支持的最早的 Windows Server Core 版本是 LTSC 2016,默认安装了 4.6.2。

【讨论】:

以上是关于如何在 docker 中安装 .net 框架?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 .Net v 4 项目中安装 Dataflow 库?

如何在docker中安装vsftp

如何在高山容器中安装 Docker?

如何在 sles 12 中安装 docker?

如何在ubunto中安装docker

如何在我的 docker 镜像中安装 postgresql?