繁体   English   中英

我们可以使用 Windows 容器将 asp.net mvc 4 应用程序部署到 docker 吗?

[英]Can we deploy an asp.net mvc 4 app to docker with windows container?

我最近看到的所有演示都是面向 Asp.net 核心的(我不确定它的稳定性和功能如何,因为它不包含所有 asp.net 功能),因为 Windows Server 2016 支持容器(和 docker),我们应该能够部署一个 asp.net mvc 4.0 应用程序吗?

是的。

您可以使用microsoft/windowsservercoremicrosoft/iis作为基础映像,安装完整的 ASP.NET 并在 Windows 上的容器中运行“传统”.NET 应用程序。 您现在可以使用 Windows 10 和 Server 2016 TP5 来实现,但 RTM(预计下周在 Ignite 上发布)应该更加稳定。

我已经通过 Dockerizing 旧的Nerd Dinner 展示应用程序展示了这一点。 您最终会得到一个 3GB 的 Docker 镜像,因此您无法获得小型、高效镜像的所有好处——但您可以在容器中运行您的应用程序,这是分解单体应用的起点。

作为参考,编译后的 ASP.NET 应用程序的 Dockerfile 如下所示:

FROM microsoft/iis

RUN ["powershell.exe", "Install-WindowsFeature NET-Framework-45-ASPNET"]
RUN ["powershell.exe", "Install-WindowsFeature Web-Asp-Net45"]

ADD web-app/ c:\\web-app

EXPOSE 8081

RUN powershell New-Website -Name 'web-app' -Port 8081 -PhysicalPath 'c:\web-app' -ApplicationPool '.NET v4.5'

ENTRYPOINT powershell

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM