Restaurar uma aplicação web a partir de uma cópia de segurança em outra subscrição usando PowerShell

Este script de amostra recupera uma cópia de segurança previamente concluída a partir de uma aplicação web existente e restaura-a para uma aplicação web em outra subscrição.

Se for preciso, instale o Azure PowerShell com a instrução que se encontra no Guia do Azure PowerShell e, em seguida, execute Connect-AzAccount para criar uma ligação ao Azure.

Script de exemplo

Nota

Para interagir com o Azure, recomenda-se o módulo Azure Az PowerShell. Consulte a instalação Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

$resourceGroupNameSub1 = "<replace-with-your-group-name>"
$resourceGroupNameSub2 = "<replace-with-desired-new-group-name>"
$webAppNameSub1 = "<replace-with-your-app-name>"
$webAppNameSub2 = "<replace-with-desired-new-app-name>"
$appServicePlanSub2 = "<replace-with-desired-new-plan-name>"
$locationSub2 = "West Europe"


# Log into the subscription with the backup
Add-AzAccount

# List statuses of all backups that are complete or currently executing.
Get-AzWebAppBackupList -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1

# Note the BackupID property of the backup you want to restore

# Get the backup object that you want to restore by specifying the BackupID
$backup = (Get-AzWebAppBackupList -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1 | where {$_.BackupId -eq '<replace-with-BackupID>'}) 

# Log into the subscription that you want to restore the app to
Add-AzAccount

# Create a new web app
New-AzWebApp -ResourceGroupName $resourceGroupNameSub2 -AppServicePlan $appServicePlanSub2 -Name $webAppNameSub2 -Location $locationSub2

# Restore the app by overwriting it with the backup data
Restore-AzWebAppBackup -ResourceGroupName $resourceGroupNameSub2 -Name $webAppNameSub2 -StorageAccountUrl $backup.StorageAccountUrl -BlobName $backup.BlobName -Overwrite

Limpar a implementação

Se já não precisar da aplicação web, use o seguinte comando para remover o grupo de recursos, a aplicação web e todos os recursos relacionados.

Remove-AzResourceGroup -Name $resourceGroupName -Force

Explicação do script

Este script utiliza os seguintes comandos. Cada comando na tabela liga à documentação específica do comando.

Comando Notas
Add-AzAccount Adiciona uma conta autenticada a utilizar para pedidos de cmdlets do Azure Resource Manager.
Get-AzWebAppBackupList Obtém uma lista de cópias de segurança para uma aplicação Web.
New-AzWebApp Cria uma aplicação web
Restaurar-AzWebAppBackup Restaura uma aplicação web a partir de uma cópia de segurança previamente concluída.

Passos seguintes

Para obter mais informações sobre o módulo do Azure PowerShell, veja Documentação do Azure PowerShell.

Podem ser encontradas amostras adicionais de Azure PowerShell para Serviço de Aplicações do Azure Aplicações Web nas amostras Azure PowerShell.