練習 - 執行 Azure 容器執行個體
在 Azure 中建立容器,並以完整網域名稱 (FQDN) 向網際網路公開。
重要
您必須有自己的 Azure 訂用帳戶才能執行本練習,且可能會產生費用。 如果您還沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
為什麼使用 Azure 容器執行個體?
對於可在隔離容器中運作的情節,Azure 容器執行個體很有用,包括簡單的應用程式、工作自動化及組建工作。 以下是一些優點:
- 快速啟動:可在幾秒內啟動容器。
- 每秒計費:只在容器執行時才產生費用。
- Hypervisor 層級安全性:像在 VM 中一樣完全隔離應用程式。
- 自訂大小:指定 CPU 核心和記憶體的確切值。
- 永續性儲存體:將 Azure 檔案共用直接裝載至容器,以擷取和保存狀態。
- Linux 和 Windows:使用相同的 API 來排程 Windows 和 Linux 容器。
對於需要完整容器協調流程的情節,包括跨多個容器的服務探索、自動縮放及協調性應用程式升級,建議使用 Azure Kubernetes Service (AKS)。
建立容器
使用您的 Azure 訂用帳戶登入 Azure 入口網站。
從 Azure 入口網站選取 Cloud Shell 圖示,以開啟 Azure Cloud Shell。 請務必選取 Bash 作為互動式 Cloud Shell 環境。
建立名為 learn-deploy-aci-rg 的新資源群組,以便完成課程模組時輕鬆清除這些資源。 如果您選擇不同的資源群組名稱,請記下來,以供本課程模組中的其餘練習使用。 您也必須選擇區域在其中建立資源群組,例如美國東部。
az group create --name learn-deploy-aci-rg --location eastus
在
az container create
命令中提供名稱、Docker 映像和 Azure 資源群組,以建立容器。 您可以指定 DNS 名稱標籤,以選擇向網際網路公開容器。 在本範例中,部署容器來裝載小型 Web 應用程式。 您也可以選取位置來放置映像。我們將使用美國東部區域,但可以變更為靠近您的位置。提供 DNS 名稱向網際網路公開容器。 DNS 名稱必須是唯一的。 為了學習,請從 Cloud Shell 執行此命令,以建立 Bash 變數來保留唯一名稱:
DNS_NAME_LABEL=aci-demo-$RANDOM
執行下列
az container create
命令以啟動容器執行個體:az container create \ --resource-group learn-deploy-aci-rg \ --name mycontainer \ --image mcr.microsoft.com/azuredocs/aci-helloworld \ --ports 80 \ --dns-name-label $DNS_NAME_LABEL \ --location eastus
$DNS_NAME_LABEL
指定您的 DNS 名稱。 映像名稱 azuredocs/aci-helloworld 是指裝載於 Microsoft Container Registry 上的容器映像,負責執行基本 Node.js Web 應用程式。當
az container create
命令完成時,請執行az container show
來檢查狀態:az container show \ --resource-group learn-deploy-aci-rg \ --name mycontainer \ --query "{FQDN:ipAddress.fqdn,ProvisioningState:provisioningState}" \ --output table
您會看到容器的完整網域名稱 (FQDN) 及其佈建狀態。 以下是範例:
FQDN ProvisioningState -------------------------------------- ------------------- aci-demo-0000.eastus.azurecontainer.io Succeeded
如果容器處於正在建立狀態,請稍候片刻,然後再次執行命令,直到您看到已成功狀態。
從瀏覽器前往容器的 FQDN,以查看其執行情況。 請務必在 aci-demo... 字串前面輸入 http:// 前置詞。 您應該會看到此歡迎頁面:
摘要
在這裡,您已建立一個可執行網頁伺服器與應用程式的 Azure 容器執行個體。 您也使用容器執行個體的 FQDN 存取此應用程式。