iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 25
1
Microsoft Azure

企業如何用好用滿Azure系列 第 25

Day25:Azure小白如何使用Azure Container Instances 執行 Docker 容器

  • 分享至 

  • xImage
  •  

在昨天我們談過Azure小白如何使用Docker指令推送Image到微軟ACR及建立ACI

今天我們來聊聊Azure Container Instances , 如何控制重新啟動,設定環境

變數,掛載file share記録狀態及Troubleshooting Azure Container

Instances

Azure Container Instances介紹

容器提供一種標準化且可重複的方式,來封裝、部署及管理雲端應用程式,Azure

Container Instances可讓你在 Azure中執行Container,而不需要管理

Virtual Machine,也不需要採用更高層級的服務。

為什麼使用 Container Instances?

對於可在隔離Container中運作的案例,包括簡單的應用程式、工作自動化及建置

工作,都十分適合使用 Azure 容器執行個體。 以下是一些優點:

-快速啟動:在幾秒內啟動容器。

-以秒為單位的計費方式:只有在容器執行時才會產生費用。

-Hypervisor 等級安全性:完全隔離您的應用程式,如同在 VM 中一樣。

-自訂大小:指定 CPU 核心和記憶體的確切值。

-永續性儲存體:直接將 Azure 檔案共用掛接至容器,以擷取和保存狀態。

-Linux 與 Windows:使用相同的 API 來為 Windows 和 Linux 容器建立排程。

https://ithelp.ithome.com.tw/upload/images/20201010/20112182JWizvypZJG.jpg

Container重新啟動原則?

https://ithelp.ithome.com.tw/upload/images/20201010/201121826UwGM7JW0u.png

設定Container環境變數

環境變數可讓您以動態方式設定Container執行的應用程式或指令碼。 在建立

Container時,可以使用 Azure CLI、PowerShell 或 Azure 入口網站來設定

變數。 安全的環境變數可讓您防止在Container輸出中顯示敏感性資訊。

使用安全的環境變數來隱藏連線資訊

環境變數是可透過 Azure 入口網站和命令列工具存取的純文字,我們可以了解

如何防止敏感性資訊(例如連接金鑰)以純文字顯示安全的環境變數可防止以純文字

輸出,若要使用安全的環境變數,我們要使用--secure-environment-variables

引數來代替 --environment-variables 引數,以下為範例

az container create \
  --resource-group learn-deploy-aci-rg \
  --name aci-demo-secure \
  --image microsoft/azure-vote-front:cosmosdb \
  --ip-address Public \
  --location eastus \
  --secure-environment-variables \
    COSMOS_DB_ENDPOINT=$COSMOS_DB_ENDPOINT \
    COSMOS_DB_MASTERKEY=$COSMOS_DB_MASTERKEY

Azure Container掛載File Share成為Stateful

根據預設,Azure Container Instances均為stateless(無狀態),如果

Container損毀或停止,其所有狀態都會遺失。,若要在Container超過存留期後

保存其狀態,你必須從外部存放區掛接磁碟區,以下為範例

az container create \
  --resource-group learn-deploy-aci-rg \
  --name aci-demo-files \
  --image microsoft/aci-hellofiles \
  --location eastus \
  --ports 80 \
  --ip-address Public \
  --azure-file-volume-account-name $STORAGE_ACCOUNT_NAME \
  --azure-file-volume-account-key $STORAGE_KEY \
  --azure-file-volume-share-name aci-share-demo \
  --azure-file-volume-mount-path /aci/logs/

針對 Azure Container Instances進行疑難排解

執行az container logs可以看到Log,指令如下

az container logs \
  --resource-group learn-deploy-aci-rg \
  --name mycontainer

az container attach 命令提供Container啟動期間的診斷資訊。 一旦

Container啟動之後,它也會將標準輸出和標準錯誤資料流寫入到您的本機

終端機,指令如下

az container attach \
  --resource-group learn-deploy-aci-rg \
  --name mycontainer

執行 az monitor metrics list 命令以擷取 CPU 使用量資訊。

az monitor metrics list \
  --resource $CONTAINER_ID \
  --metric CPUUsage \
  --output table

https://ithelp.ithome.com.tw/upload/images/20201010/20112182y7YS9lXh6Z.png

手把手執行Azure Container Instances步驟

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/2-run-aci

手把手控制Azure Container Instances重新啟動步驟

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/3-restart-policies

手把手設定Azure Container Instances環境變數步驟

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/4-use-environment-variables

手把手設定Azure Container Instances使用資料磁碟區步驟

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/5-use-data-volumes

手把手針對Azure Container Instances進行疑難排解

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/6-troubleshoot-aci

Day25教學講義:

https://docs.microsoft.com/zh-tw/learn/modules/run-docker-with-azure-container-instances/


上一篇
Day24:Azure小白如何使用本地 Docker指令推送Image到微軟ACR及建立ACI
下一篇
Day26:Azure小白如何使用Azure Container Registry異地複寫建立多份Container Image
系列文
企業如何用好用滿Azure30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言