Usar um botão de implantação para implantar modelos remotos
Este artigo descreve como usar o botão Implantar no Azure para implantar modelos JSON ARM remotos de um repositório GitHub ou de uma conta de armazenamento do Azure. Você pode adicionar o botão diretamente ao arquivo README.md em seu repositório GitHub. Ou, você pode adicionar o botão a uma página da Web que faz referência ao repositório. Este método não suporta a implantação de arquivos Bicep remotos.
O escopo da implantação é determinado pelo esquema do modelo. Para obter mais informações, consulte:
Permissões obrigatórias
Para implementar um ficheiro Bicep ou modelo do ARM, precisa de acesso de escrita nos recursos que está a implementar e acesso a todas as operações no tipo de recurso Microsoft.Resources/deployments. Por exemplo, para implantar uma máquina virtual, você precisa de Microsoft.Compute/virtualMachines/write
permissões Microsoft.Resources/deployments/*
. A operação hipotética tem os mesmos requisitos de permissão.
Para obter uma lista de funções e permissões, veja Funções incorporadas do Azure.
Usar imagem comum
Para adicionar o botão à sua página da Web ou repositório, use a seguinte imagem:
![Deploy to Azure](https://aka.ms/deploytoazurebutton)
<img src="https://aka.ms/deploytoazurebutton"/>
A imagem aparece como:
Criar URL para implantar modelo
Esta seção mostra como obter as URLs para os modelos armazenados no GitHub e na conta de armazenamento do Azure e como formatar as URLs.
Modelo armazenado no GitHub
Para criar a URL para seu modelo, comece com a URL bruta para o modelo no repositório do GitHub. Para ver o URL bruto, selecione Raw.
O formato do URL é:
https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json
Nota
Para implantar um modelo ou fazer referência a um modelo vinculado armazenado em um repositório privado do GitHub, consulte uma solução personalizada documentada em Criando uma oferta personalizada e segura do Portal do Azure. Você pode criar uma função do Azure que extrai o token do GitHub do Cofre da Chave do Azure.
Se você estiver usando o Git com o Azure Repos em vez de um repositório GitHub, ainda poderá usar o botão Implantar no Azure . Certifique-se de que o seu repositório é público. Use a operação Items para obter o modelo. O seu pedido deve ter o seguinte formato:
https://dev.azure.com/{organization-name}/{project-name}/_apis/git/repositories/{repository-name}/items?scopePath={url-encoded-path}&api-version=6.0
Modelo armazenado na conta de armazenamento do Azure
O formato das URLs para os modelos armazenados em um contêiner público é:
https://{storage-account-name}.blob.core.windows.net/{container-name}/{template-file-name}
Por exemplo:
https://demostorage0215.blob.core.windows.net/democontainer/azuredeploy.json
Você pode proteger o modelo com o token SAS. Para obter mais informações, consulte Como implantar modelo ARM privado com token SAS. A seguinte url é um exemplo com token SAS:
https://demostorage0215.blob.core.windows.net/privatecontainer/azuredeploy.json?sv=2019-07-07&sr=b&sig=rnI8%2FvKoCHmvmP7XvfspfyzdHjtN4GPsSqB8qMI9FAo%3D&se=2022-02-16T17%3A47%3A46Z&sp=r
Formatar o URL
Depois de ter o URL, você precisa convertê-lo em um valor codificado por URL. Você pode usar um codificador online ou executar um comando. O exemplo do PowerShell a seguir mostra como codificar um valor por URL.
$url = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json"
[uri]::EscapeDataString($url)
O URL de exemplo tem o seguinte valor quando URL codificado.
https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json
Cada link começa com o mesmo URL base:
https://portal.azure.com/#create/Microsoft.Template/uri/
Adicione o link do modelo codificado por URL ao final do URL base.
https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json
Você tem o URL completo para o link.
Botão Criar Implantar no Azure
Por fim, junte o link e a imagem.
Para adicionar o botão com Markdown no arquivo README.md no repositório GitHub ou em uma página da Web, use:
[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json)
Para HTML, use:
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json" target="_blank">
<img src="https://aka.ms/deploytoazurebutton"/>
</a>
Para o repositório Git com Azure, o botão está no formato:
[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdev.azure.com%2Forgname%2Fprojectname%2F_apis%2Fgit%2Frepositories%2Freponame%2Fitems%3FscopePath%3D%2freponame%2fazuredeploy.json%26api-version%3D6.0)
Implementar o modelo
Para testar a solução completa, selecione o seguinte botão:
O portal exibe um painel que permite fornecer facilmente valores de parâmetro. Os parâmetros são pré-preenchidos com os valores padrão do modelo. O nome do parâmetro com caixa camel, storageAccountType, definido no modelo, é transformado em uma cadeia de caracteres separada por espaço quando exibido no portal.
Próximos passos
- Para saber mais sobre modelos, consulte Compreender a estrutura e a sintaxe dos modelos ARM.