容器化 .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

開啟瀏覽器,在 https://:8080 檢視應用程式。您應該會看到一個簡單的 Web 應用程式。

在終端中,按 ctrl+c 停止應用程式。

在後臺執行應用程式

您可以透過新增 `-d` 選項,將應用程式從終端分離執行。在 `docker-dotnet-sample` 目錄中,在終端中執行以下命令。

$ docker compose up --build -d

開啟瀏覽器,在 https://:8080 檢視應用程式。您應該會看到一個簡單的 Web 應用程式。

在終端中,執行以下命令以停止應用程式。

$ docker compose down

有關 Compose 命令的更多資訊,請參閱Compose CLI 參考

摘要

在本節中,您學習瞭如何使用 Docker 容器化和執行 .NET 應用程式。

相關資訊

後續步驟

在下一節中,您將學習如何使用 Docker 容器開發您的應用程式。