Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describe cómo usar el botón Implementar en Azure para implementar plantillas JSON de ARM remotas desde un repositorio de GitHub o una cuenta de Almacenamiento de Azure. Puede agregar el botón directamente al archivo README.md en el repositorio de GitHub. O bien, puede agregar el botón a una página web que haga referencia al repositorio. Este método no admite la implementación de archivos de Bicep remotos.
El ámbito de implementación viene determinado por el esquema de plantilla. Para obtener más información, consulte:
Permisos necesarios
Para implementar un archivo de Bicep o una plantilla de ARM, necesitas acceso de escritura en los recursos que estás implementando y acceso para realizar todas las operaciones en el tipo de recurso Microsoft.Resources/deployments. Por ejemplo, para implementar una máquina virtual, necesita los permisos Microsoft.Compute/virtualMachines/write
y Microsoft.Resources/deployments/*
. La operación what-if tiene los mismos requisitos de permisos.
Para obtener una lista de roles y permisos, consulte Roles integrados de Azure.
Uso de una imagen común
Para agregar el botón a la página web o al repositorio, use la siguiente imagen:

<img src="https://aka.ms/deploytoazurebutton"/>
La imagen aparece como:
Creación de una dirección URL para implementar la plantilla
En esta sección se muestra cómo obtener las direcciones URL de las plantillas almacenadas en GitHub y la cuenta de Azure Storage, y cómo dar formato a las direcciones URL.
Plantilla almacenada en GitHub
Para crear la URL de tu plantilla, comienza con la URL original de la plantilla en tu repositorio de GitHub. Para ver la dirección URL sin procesar, seleccione Sin procesar.
El formato de la dirección URL es:
https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json
Nota:
Para implementar una plantilla o hacer referencia a una plantilla vinculada almacenada en un repositorio privado de GitHub, consulte una solución personalizada documentada en Creación de una oferta de Azure Portal personalizada y segura. Puede crear una función de Azure que extraiga el token de GitHub de Azure Key Vault.
Si usa Git con Azure Repos en lugar de un repositorio de GitHub, puede seguir usando el botón Implementar en Azure . Asegúrese de que el repositorio es público. Use la operación Items para obtener la plantilla. La solicitud debe tener el formato siguiente:
https://dev.azure.com/{organization-name}/{project-name}/_apis/git/repositories/{repository-name}/items?scopePath={url-encoded-path}&api-version=6.0
Plantilla almacenada en la cuenta de Almacenamiento de Azure
El formato de las direcciones URL de las plantillas almacenadas en un contenedor público es:
https://{storage-account-name}.blob.core.windows.net/{container-name}/{template-file-name}
Por ejemplo:
https://demostorage0215.blob.core.windows.net/democontainer/azuredeploy.json
Puede proteger la plantilla con el token de SAS. Para más información, consulte Implementación de una plantilla de ARM privada con el token de SAS. La siguiente dirección URL es un ejemplo con el token de 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
Dar formato a la dirección URL
Una vez que tenga la dirección URL, debe convertir la dirección URL en un valor con codificación URL. Puede usar un codificador en línea o ejecutar un comando. En el siguiente ejemplo de PowerShell se muestra cómo codificar un valor de URL.
$url = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json"
[uri]::EscapeDataString($url)
La dirección URL de ejemplo tiene el siguiente valor cuando la dirección URL está codificada.
https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json
Cada vínculo comienza con la misma dirección URL base:
https://portal.azure.com/#create/Microsoft.Template/uri/
Agregue el vínculo de plantilla con codificación URL al final de la dirección 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
Ya tiene la dirección URL completa del vínculo.
Crear el botón Implementar en Azure
Por último, coloque el vínculo y la imagen juntos.
Para agregar el botón con Markdown en el archivo README.md en el repositorio de GitHub o en una página web, use:
[](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, utilice:
<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 Git con el repositorio de Azure, el botón tiene el formato :
[](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)
Implementación de la plantilla
Para probar la solución completa, seleccione el botón siguiente:
El portal muestra un panel que permite proporcionar fácilmente valores de parámetro. Los parámetros se rellenan previamente con los valores predeterminados de la plantilla. El nombre del parámetro con mayúsculas y minúsculas Camel, storageAccountType, definido en la plantilla se convierte en una cadena separada por espacios cuando se muestra en el portal.
Pasos siguientes
- Para más información sobre las plantillas, consulte Descripción de la estructura y la sintaxis de las plantillas de ARM.