【Azure 雲服務】如何從Azure Cloud Service中獲取專案的部署檔案

路邊兩盞燈發表於2021-02-23

問題描述

在歷史已經部署的雲服務(Azure Cloud Service)中,如何獲取到專案在很久以前的部署包檔案呢?

【Azure 雲服務】如何從Azure Cloud Service中獲取專案的部署檔案

解決辦法

1)如果部署雲服務是通過門戶上傳部署包到儲存賬號中,則可以直接從儲存賬號(Storage Account -> BLOB)中直接下載部署包

 

2)如果無法找到部署時候使用的儲存賬號(Storage Account)或已經刪除了部署包所儲存的資源。也可以通過Cloud Service所提供的API來實現(Get Package)。

Get Package:獲取用於部署的雲服務部署包,並將部署包檔案儲存在Microsoft Azure Blob中,儲存的檔案包含兩種(配置檔案和專案檔案):

  • Service configuration file(.cscfg) - 包含雲服務的配置資訊,Role的定義和例項數量等

  • Service package(.cspkg) - 包含專案程式碼和服務定義檔案

在中國區使用的Endpoint為:https://management.core.chinacloudapi.cn/<subscription-id>/services/hostedservices/<cloudservice-name>/deployments/<deployment-name>/package

 

關於詳細使用Get Package下載部署包的操作步驟,可以參考原文件:https://techcommunity.microsoft.com/t5/azure-paas-blog/azure-cloud-service-download-package/ba-p/819730

 

準備Azure Tools工具

執行以下步驟

  1. 雙擊下載的AzureTools.exe檔案,點選Utils Tab頁
  2. 選擇其中的Misc Tools.
    【Azure 雲服務】如何從Azure Cloud Service中獲取專案的部署檔案
  3. 在新彈出的視窗中,選擇Service Management REST API Tab頁
  4. 建立自定義證書(如果已經有云服務的自定義證書,則在Misc Tools中直接匯入.cer的證書檔案)
    • 可以通過IIS建立自定義證書或者使用openssl 及 Certreq.exe生成證書。詳細可以參考文件:https://technet.microsoft.com/en-us/library/ff710475(v=ws.10).aspx
    • 在本地計算機中安裝新生成的證書 
    • 上傳證書(.cer格式的檔案)到雲服務中
    • Azure門戶 --> 雲服務 --> 證書管理(Certificates) -->上傳新證書
  5. 在Misc Tool的Service Management REST API Tab中,資料當前的訂閱號,選擇上一步建立的證書檔案,選擇POST操作
  6. 填寫Get Package的URL並攜帶正確的引數。如<subscription-id>,<cloudservice-name>,<deployment-name> 和 containerUri引數。參考文件:https://docs.microsoft.com/en-us/previous-versions/azure/reference/jj154121(v=azure.100)
    •  containerUri引數的值為Storage Account儲存賬號,需要一個Public的container的URL用於儲存雲服務的部署包
  7. 點選Submit按鈕,等待API的返回為202 - Accpeted後,即可以在上一步中的Stroage Account中檢視到部署包

【Azure 雲服務】如何從Azure Cloud Service中獲取專案的部署檔案

 

 

 

當下載雲服務的部署包後,可以直接在檔案中檢視當專案資原始檔,也可以直接把該檔案部署到Azure應用服務中。部署包的專案檔案結構如下圖所示:

【Azure 雲服務】如何從Azure Cloud Service中獲取專案的部署檔案

 

 

參考資料 

Get Packagehttps://docs.microsoft.com/en-us/previous-versions/azure/reference/jj154121(v=azure.100)
Azure Cloud Service Download Packagehttps://techcommunity.microsoft.com/t5/azure-paas-blog/azure-cloud-service-download-package/ba-p/819730
Create and export a self-signed certificatehttps://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff710475(v=ws.10)?redirectedfrom=MSDN

 

相關文章