容器化 .NET 应用程序

先决条件

  • 您已安装最新版本的 Docker Desktop.
  • 您有一个 git 客户端. 本节示例使用基于命令行的 git 客户端,但您可以使用任何客户端。

概述

本节将指导您完成容器化和运行 .NET 应用程序的过程。

获取示例应用程序

在本指南中,您将使用一个预先构建的 .NET 应用程序。该应用程序类似于 Docker 博客文章中构建的应用程序,使用 Docker Desktop 构建多容器 .NET 应用程序.

打开一个终端,将目录更改为您要工作的目录,并运行以下命令克隆存储库。

$ git clone https://github.com/docker/docker-dotnet-sample

初始化 Docker 资源

现在您有了应用程序,可以使用 docker init 创建必要的 Docker 资源来容器化您的应用程序。在 docker-dotnet-sample 目录中,在终端中运行 docker init 命令。docker init 提供了一些默认配置,但您需要回答一些有关应用程序的问题。请参考以下示例来回答 docker init 中的提示,并对您的提示使用相同的答案。

$ docker init
Welcome to the Docker Init CLI!

This utility will walk you through creating the following files with sensible defaults for your project:
  - .dockerignore
  - Dockerfile
  - compose.yaml
  - README.Docker.md

Let's get started!

? What application platform does your project use? ASP.NET Core
? What's the name of your solution's main project? myWebApp
? What version of .NET do you want to use? 6.0
? What local port do you want to use to access your server? 8080

您现在应该在 docker-dotnet-sample 目录中具有以下内容。

├── docker-dotnet-sample/
│ ├── .git/
│ ├── src/
│ ├── .dockerignore
│ ├── compose.yaml
│ ├── Dockerfile
│ ├── README.Docker.md
│ └── README.md

要详细了解 docker init 添加的文件,请参阅以下内容

运行应用程序

docker-dotnet-sample 目录中,在终端中运行以下命令。

$ docker compose up --build

打开浏览器并访问 https://127.0.0.1:8080。您应该看到一个简单的 Web 应用程序。

在终端中,按 ctrl+c 停止应用程序。

在后台运行应用程序

您可以通过添加 -d 选项在分离模式下运行应用程序。在 docker-dotnet-sample 目录中,在终端中运行以下命令。

$ docker compose up --build -d

打开浏览器并访问 https://127.0.0.1:8080。您应该看到一个简单的 Web 应用程序。

在终端中,运行以下命令停止应用程序。

$ docker compose down

有关 Compose 命令的更多信息,请参阅 Compose CLI 参考.

总结

在本节中,您学习了如何使用 Docker 容器化和运行 .NET 应用程序。

相关信息

下一步

在下一节中,您将学习如何使用 Docker 容器开发应用程序。