容器化 .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? 8.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
打开浏览器,访问 http://localhost:8080 查看应用。你应该看到一个简单的 Web 应用。
在终端中,按 `ctrl`+`c` 停止应用。
在后台运行应用
你可以通过添加 `-d` 选项将应用从终端中分离运行。在 `docker-dotnet-sample` 目录下,在终端中运行以下命令。
$ docker compose up --build -d
打开浏览器,访问 http://localhost:8080 查看应用。你应该看到一个简单的 Web 应用。
在终端中,运行以下命令停止应用。
$ docker compose down
有关 Compose 命令的更多信息,请参阅Compose CLI 参考。
总结
在本节中,你学习了如何使用 Docker 容器化并运行 .NET 应用。
相关信息
下一步
在下一节中,你将学习如何使用 Docker 容器开发你的应用。