Restaurar uma aplicação Web a partir de uma cópia de segurança noutra subscrição com o PowerShell

Este script de exemplo obtém uma cópia de segurança concluída anteriormente a partir de uma aplicação Web existente e restaura-a para uma aplicação Web noutra 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

Recomendamos que utilize o módulo Azure Az PowerShell para interagir com o Azure. Veja Instalar 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.

# This sample script retrieves a previously completed backup from an existing web app and restores it to a web app in another subscription.
# If needed, install the Azure PowerShell using the instruction found in the Azure PowerShell guide, and then run Connect-AzAccount to create a connection with Azure.

$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-AzWebAppBackup -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1 -BackupId '<replace-with-BackupID>')

# Get the storage account URL of the backup configuration
$url = (Get-AzWebAppBackupConfiguration -ResourceGroupName $resourceGroupNameSub1 -Name $webAppNameSub1).StorageAccountUrl

# 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 $url -BlobName $backup.BlobName -Overwrite

Limpar a implementação

Se já não precisar da aplicação Web, utilize 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.
Get-AzWebAppBackup Obtém uma cópia de segurança de uma aplicação Web com o ID de cópia de segurança.
Get-AzWebAppBackupConfiguration Obtém a configuração de cópia de segurança de uma aplicação Web.
New-AzWebApp Cria uma aplicação Web
Restore-AzWebAppBackup Restaura uma aplicação Web a partir de uma cópia de segurança concluída anteriormente.

Passos seguintes

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

Podem ser encontrados exemplos de Azure PowerShell adicionais para Serviço de Aplicações do Azure Aplicações Web nos exemplos de Azure PowerShell.