Docker 17
引擎 | Engine

.NET核心应用程序(引擎) | .NET Core application (Engine)

Dockerize 一个 .NET Core 应用程序

介绍

这个例子演示了如何 dockerize 一个 ASP.NET Core 应用程序。

为什么要构建 ASP.NET Core?

先决条件

此示例假定您的计算机上已经有一个 ASP.NET Core应用程序。如果您不熟悉 ASP.NET,则可以按照简单教程初始化项目或克隆ASP.NET Docker示例

为 ASP.NET Core 应用程序创建一个 Dockerfile

  • 在你的项目文件夹中创建一个Dockerfile

FROM microsoft/aspnetcore-build:2.0 AS build-env WORKDIR /app # Copy csproj and restore as distinct layers COPY *.csproj ./ RUN dotnet restore # Copy everything else and build COPY . ./ RUN dotnet publish -c Release -o out # Build runtime image FROM microsoft/aspnetcore:2.0 WORKDIR /app COPY --from=build-env /app/out . ENTRYPOINT ["dotnet", "aspnetapp.dll"]

  • 为使您的构建环境尽可能小,请将.dockerignore文件添加到项目文件夹并将以下内容复制到其中。

bin\ obj\

构建并运行 Docker 镜像

  • 在命令提示符下导航到您的项目文件夹。

$ docker build -t aspnetapp . $ docker run -d -p 8080:80 --name myapp aspnetapp

查看从容器运行的网页

进一步阅读

dockerize, dockerizing, dotnet, .NET, Core, article, example, platform, installation, containers, images, image, dockerfile, build, asp.net, asp.net core