Sdílet prostřednictvím


Rychlý start: Publikování modulů Bicep do privátního registru modulů

Zjistěte, jak publikovat moduly Bicep do privátního registru modulů a jak volat moduly ze souborů Bicep. Registr privátních modulů umožňuje sdílet moduly Bicep v rámci vaší organizace. Další informace najdete v tématu Vytvoření privátního registru pro moduly Bicep.

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Pokud chcete pracovat s registry modulů, musíte mít rozhraní příkazového řádku Bicep verze 0.4.1008 nebo novější. Pokud chcete používat s Azure CLI, musíte mít také Azure CLI verze 2.31.0 nebo novější. Pokud chcete použít s Azure PowerShellem, musíte mít také Azure PowerShell verze 7.0.0 nebo novější.

Registr Bicep je hostovaný ve službě Azure Container Registry (ACR). Pokud ho chcete vytvořit, přečtěte si článek Rychlý start: Vytvoření registru kontejneru pomocí souboru Bicep.

Pokud chcete nastavit prostředí pro vývoj bicep, přečtěte si téma Instalace nástrojů Bicep. Po dokončení těchto kroků budete mít Visual Studio Code a rozšíření Bicep nebo Visual Studio a rozšíření Bicep.

Vytvoření modulů Bicep

Modul je soubor Bicep nasazený z jiného souboru Bicep. Libovolný soubor Bicep lze použít jako modul. V tomto rychlém startu můžete použít následující soubor Bicep. Vytvoří účet úložiště:

@minLength(3)
@maxLength(11)
param storagePrefix string

@allowed([
  'Standard_LRS'
  'Standard_GRS'
  'Standard_RAGRS'
  'Standard_ZRS'
  'Premium_LRS'
  'Premium_ZRS'
  'Standard_GZRS'
  'Standard_RAGZRS'
])
param storageSKU string = 'Standard_LRS'
param location string

var uniqueStorageName = '${storagePrefix}${uniqueString(resourceGroup().id)}'

resource stg 'Microsoft.Storage/storageAccounts@2023-04-01' = {
  name: uniqueStorageName
  location: location
  sku: {
    name: storageSKU
  }
  kind: 'StorageV2'
  properties: {
    supportsHttpsTrafficOnly: true
  }
}

output storageEndpoint object = stg.properties.primaryEndpoints

Uložte soubor Bicep jako storage.bicep.

Publikování modulů

Pokud nemáte registr kontejnerů Azure (ACR), přečtěte si téma Požadavky na jeho vytvoření. Je potřeba název přihlašovacího serveru služby ACR. Formát přihlašovacího serveru je: <registry-name>.azurecr.io. Získání názvu přihlašovacího serveru:

az acr show --resource-group <resource-group-name> --name <registry-name> --query loginServer

Pomocí následující syntaxe publikujte soubor Bicep jako modul do privátního registru modulu.

az bicep publish --file storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html

V předchozí ukázce je soubor Bicep, který se má publikovat. V případě potřeby aktualizujte cestu k souboru. Cesta k modulu má následující syntaxi:

br:<registry-name>.azurecr.io/<file-path>:<tag>
  • br je název schématu pro registr Bicep.
  • Cesta k souboru se volá repository ve službě Azure Container Registry. Cesta k souboru může obsahovat segmenty oddělené znakem / . Tato cesta k souboru se vytvoří, pokud v registru neexistuje.
  • značka se používá k zadání verze modulu.

Pokud chcete ověřit publikované moduly, můžete uvést úložiště ACR:

az acr repository list --name <registry-name> --output table

Volání modulů

Pokud chcete volat modul, vytvořte v editoru Visual Studio Code nový soubor Bicep. Do nového souboru Bicep zadejte následující řádek.

module stgModule 'br:<registry-name>.azurecr.io/bicep/modules/storage:v1'

Nahraďte <název> registru názvem registru ACR. Obnovení modulu do místní mezipaměti chvíli trvá. Po obnovení modulu zmizí červená složená čára pod cestou modulu. Na konci řádku přidejte = mezeru a pak vyberte požadované vlastnosti , jak je znázorněno na následujícím snímku obrazovky. Struktura modulu se vyplní automaticky.

Požadované vlastnosti rozšíření Visual Studio Code Bicep

Následující příklad je dokončený soubor Bicep.

@minLength(3)
@maxLength(11)
param namePrefix string
param location string = resourceGroup().location

module stgModule 'br:ace1207.azurecr.io/bicep/modules/storage:v1' = {
  name: 'stgStorage'
  params: {
    location: location
    storagePrefix: namePrefix
  }
}

Uložte soubor Bicep místně a pak pomocí Azure CLI nebo Azure PowerShellu nasaďte soubor Bicep:

resourceGroupName = "{provide-a-resource-group-name}"
templateFile="{provide-the-path-to-the-bicep-file}"

az group create --name $resourceGroupName --location eastus

az deployment group create --resource-group $resourceGroupName --template-file $templateFile

Na webu Azure Portal ověřte, že se účet úložiště úspěšně vytvořil.

Vyčištění prostředků

Pokud už prostředky Azure nepotřebujete, pomocí azure CLI nebo modulu Azure PowerShell odstraňte skupinu prostředků pro rychlý start.

resourceGroupName = "{provide-the-resource-group-name}"

az group delete --name $resourceGroupName

Další kroky