Używanie przycisku wdrażania do wdrażania szablonów zdalnych

W tym artykule opisano, jak za pomocą przycisku Wdróż na platformie Azure wdrożyć zdalne szablony JSON usługi ARM z repozytorium GitHub lub konta usługi Azure Storage. Możesz dodać przycisk bezpośrednio do pliku README.md w repozytorium GitHub. Możesz też dodać przycisk do strony internetowej, która odwołuje się do repozytorium. Ta metoda nie obsługuje wdrażania zdalnych plików Bicep.

Zakres wdrożenia jest określany przez schemat szablonu. Aby uzyskać więcej informacji, zobacz:

Wymagane uprawnienia

Aby wdrożyć plik Bicep lub szablon usługi ARM, potrzebujesz dostępu do zapisu w zasobach wdrażanych i dostępu do wszystkich operacji w typie zasobu Microsoft.Resources/deployments. Na przykład w celu wdrożenia maszyny wirtualnej potrzebne są Microsoft.Compute/virtualMachines/write uprawnienia i Microsoft.Resources/deployments/* uprawnienia. Operacja warunkowa ma te same wymagania dotyczące uprawnień.

Aby uzyskać listę ról i uprawnień, zobacz Role wbudowane platformy Azure.

Używanie wspólnego obrazu

Aby dodać przycisk do strony internetowej lub repozytorium, użyj następującej ilustracji:

![Deploy to Azure](https://aka.ms/deploytoazurebutton)
<img src="https://aka.ms/deploytoazurebutton"/>

Obraz jest wyświetlany jako:

Zrzut ekranu przedstawiający przycisk Wdróż na platformie Azure.

Tworzenie adresu URL do wdrażania szablonu

W tej sekcji pokazano, jak uzyskać adresy URL szablonów przechowywanych na koncie usługi GitHub i azure storage oraz jak sformatować adresy URL.

Szablon przechowywany w usłudze GitHub

Aby utworzyć adres URL szablonu, zacznij od nieprzetworzonego adresu URL do szablonu w repozytorium GitHub. Aby wyświetlić nieprzetworzone adresy URL, wybierz pozycję Nieprzetworzone.

Zrzut ekranu przedstawiający sposób wybierania pozycji Nieprzetworzone w usłudze GitHub.

Format adresu URL to:

https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json

Uwaga

Aby wdrożyć szablon lub odwołać się do połączonego szablonu przechowywanego w prywatnym repozytorium GitHub, zobacz niestandardowe rozwiązanie opisane w temacie Tworzenie niestandardowej i bezpiecznej oferty witryny Azure Portal. Możesz utworzyć funkcję platformy Azure, która ściąga token usługi GitHub z usługi Azure Key Vault.

Jeśli używasz usługi Git z Azure Repos zamiast repozytorium GitHub, nadal możesz użyć przycisku Wdróż na platformie Azure. Upewnij się, że repozytorium jest publiczne. Użyj operacji Elementy , aby pobrać szablon. Twoje żądanie powinno mieć następujący format:

https://dev.azure.com/{organization-name}/{project-name}/_apis/git/repositories/{repository-name}/items?scopePath={url-encoded-path}&api-version=6.0

Szablon przechowywany na koncie usługi Azure Storage

Format adresów URL szablonów przechowywanych w kontenerze publicznym to:

https://{storage-account-name}.blob.core.windows.net/{container-name}/{template-file-name}

Przykład:

https://demostorage0215.blob.core.windows.net/democontainer/azuredeploy.json

Szablon można zabezpieczyć za pomocą tokenu SAS. Aby uzyskać więcej informacji, zobacz How to deploy private ARM template with SAS token (Jak wdrożyć prywatny szablon usługi ARM przy użyciu tokenu SAS). Poniższy adres URL jest przykładem tokenu 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

Formatowanie adresu URL

Po utworzeniu adresu URL należy przekonwertować adres URL na wartość zakodowaną w adresie URL. Możesz użyć kodera online lub uruchomić polecenie. W poniższym przykładzie programu PowerShell pokazano, jak zakodować wartość w adresie URL.

$url = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json"
[uri]::EscapeDataString($url)

Przykładowy adres URL ma następującą wartość podczas kodowania adresu URL.

https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.storage%2Fstorage-account-create%2Fazuredeploy.json

Każdy link rozpoczyna się od tego samego podstawowego adresu URL:

https://portal.azure.com/#create/Microsoft.Template/uri/

Dodaj link do szablonu zakodowanego pod adresem URL na końcu podstawowego adresu URL.

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

Masz pełny adres URL linku.

Przycisk Utwórz wdróż na platformie Azure

Na koniec umieść łącze i obraz razem.

Aby dodać przycisk z językiem Markdown w pliku README.md w repozytorium GitHub lub na stronie internetowej, użyj:

[![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)

W przypadku kodu HTML użyj:

<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>

W przypadku repozytorium Git z repozytorium platformy Azure przycisk jest w formacie:

[![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)

Wdrożenie szablonu

Aby przetestować pełne rozwiązanie, wybierz następujący przycisk:

Zrzut ekranu przedstawiający przycisk Wdróż na platformie Azure z linkiem.

W portalu zostanie wyświetlone okienko, które umożliwia łatwe podawanie wartości parametrów. Parametry są wstępnie wypełnione wartościami domyślnymi z szablonu. Nazwa parametru camel-cased , storageAccountType, zdefiniowana w szablonie jest przekształcana w ciąg rozdzielony spacją po wyświetleniu w portalu.

Zrzut ekranu przedstawiający okienko wyświetlania Azure Portal do podawania wartości parametrów.

Następne kroki