首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否可以进一步减少对asp.net web应用程序在docker容器上运行的docker映像的依赖?

我是否可以进一步减少对asp.net web应用程序在docker容器上运行的docker映像的依赖?
EN

Stack Overflow用户
提问于 2019-01-01 22:53:27
回答 1查看 260关注 0票数 1

我按照https://github.com/Microsoft/dotnet-framework-docker链接构建了示例ASP.NET Web应用程序,构建在.net 4.6.1框架之上。

这是我的码头文件:

代码语言:javascript
复制
FROM microsoft/dotnet-framework:4.7.2-sdk AS build
WORKDIR /app

# copy csproj and restore as distinct layers
COPY *.sln .
COPY TestWebAPI/*.csproj ./TestWebAPI/
COPY TestWebAPI/*.config ./TestWebAPI/
RUN nuget restore

# copy everything else and build app
COPY TestWebAPI/. ./TestWebAPI/
WORKDIR /app/TestWebAPI
RUN msbuild /p:Configuration=Release


FROM microsoft/aspnet:4.7.2 AS runtime
WORKDIR /inetpub/wwwroot
COPY --from=build /app/TestWebAPI/. ./

来运行我执行的以下命令的脚本:

代码语言:javascript
复制
docker image build --tag testwebapi --file .\Dockerfile .

docker container run --detach --publish 80 testwebapi

脚本运行良好,我能够运行我的应用程序.

问题:

  1. 我使用dotnet-framework:4.7.2-sdk映像来构建,使用aspnet:4.7.2映像来运行应用程序。我查看了aspnet映像,它包含"Windows作为基本操作系统,IIS10作为Web,.NET框架(可提供的多个版本),.NET可扩展性“。在这种情况下,我还需要dotnet-framework:4.7.2-sdk图像吗?

  1. 我不认为脚本使用IIS作为web服务器。如何使用IIS承载此应用程序?
EN

回答 1

Stack Overflow用户

发布于 2019-01-02 03:06:09

首先,请注意sdk映像实际上并不包含在最终映像中,只有运行时映像是。在您的FROM中有两行Dockerfile

代码语言:javascript
复制
FROM microsoft/dotnet-framework:4.7.2-sdk AS build
...
FROM microsoft/aspnet:4.7.2 AS runtime

这将创建一个多级建造。只有第二个(最后)阶段的基本映像(即运行时映像)将包含在图像中。

对于.NET框架本身之外的sdk映像中包含的内容,请查看它的Dockerfile,您将在生产服务器上发现一些绝对不需要的东西,例如NuGet CLI、VS Test等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53999565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档