2017-04-10 73 views
0

如何使用Restore-AzureRmWebAppBackup將應用程序服務還原到不同的現有網站?這通常可以在門戶網站中完成,但由於某種原因,目標應用程序服務未列出,即使它位於相同的資源組中。將Azure App Service備份還原到其他網站

+0

您是否嘗試過使用Restore-AzureRMWebAppBackup cmdlet?它給了什麼錯誤? –

+0

我沒有嘗試它,因爲沒有明顯的選項來指定目標應用服務。這是我的問題的重點。 –

回答

1

如何使用Restore-AzureRmWebAppBackup將應用程序服務還原到其他現有網站?

以下是從PowerShell恢復Web應用程序的示例代碼。

$resourceGroupName = "target web app resource group name" 
$appName = "target web app name" 
$blobName = "backup blob name" 
$storageAccountURL = "SAS URL of your blob container" 
Restore-AzureRmWebAppBackup -ResourceGroupName $resourceGroupName -Name $appName -StorageAccountUrl $storageAccountURL -BlobName $blobName -Overwrite 

我們可以在備份網絡應用程序後,從還原頁面找到blob名稱。

enter image description here

欲瞭解更多信息,下面的鏈接供您參考。

Use PowerShell to back up and restore App Service apps

+0

謝謝,這工作!不幸的是,他們的cmdlet不會返回任何內容,也沒有明顯的方式來檢查恢復請求的狀態。花了大約10分鐘,但終於奏效了。 –

1

以下是使用bash CLI溶液:

先決條件:與容器和用於在同一容器URL的存儲帳戶。容器URL包含訪問密鑰(SAS)。關於容器URL的更多信息可以在這裏找到:https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-shared-access-signature-part-1

您還可以使用下面的命令來生成SAS令牌:

az storage container generate-sas --name <container-name> --expiry <sas-expiry> --permissions <permissions> --account-name <account-name> --account-key <account-key> 

要克隆的應用程序,請使用以下命令:

backupname=appname_`date "+%Y%m%d%H%M%S"` 

az webapp config backup create --resource-group $OriginresourceGroupName --webapp-name $originAppName --backup-name $backupname --slot $OriginSlotName --container-url "$ContainerURL" 

az webapp config backup restore --backup-name $backupname --container-url $ContainerURL --resource-group $TargetresourceGroupName --webapp-name $TargetAppname --overwrite --ignore-hostname-conflict