Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Při nasazování prostředků možná budete muset zajistit, aby byly některé prostředky nasazené před jinými prostředky. Například před nasazením databáze potřebujete logický SQL server. Tento vztah vytvoříte tak, že označíte jeden prostředek jako závislý na druhém prostředku. Pořadí nasazení prostředků se určuje dvěma způsoby: implicitní závislost a explicitní závislost
Azure Resource Manager vyhodnotí závislosti mezi prostředky a nasadí je v závislém pořadí. Pokud na sobě prostředky nezávisí, Resource Manager je nasadí paralelně. Závislosti je třeba definovat pouze pro prostředky, které jsou nasazeny ve stejném souboru Bicep.
Implicitní závislost
Implicitní závislost se vytvoří, když jedna deklarace prostředku odkazuje na jiný prostředek ve stejném nasazení. V následujícím příkladu otherResource získá vlastnost z exampleDnsZone. Pojmenovaný prostředek otherResource je implicitně závislý na exampleDnsZone.
resource exampleDnsZone 'Microsoft.Network/dnsZones@2023-07-01-preview' = {
name: 'myZone'
location: 'global'
}
resource otherResource 'Microsoft.Example/examples@2024-05-01' = {
name: 'exampleResource'
properties: {
// get read-only DNS zone property
nameServers: exampleDnsZone.properties.nameServers
}
}
Vnořený prostředek má také implicitní závislost na svůj obsahující prostředek.
resource myParent 'My.Rp/parentType@2024-05-01' = {
name: 'myParent'
location: 'West US'
// implicit dependency on 'myParent'
resource myChild 'childType' = {
name: 'myChild'
}
}
Prostředek, který obsahuje nadřazenou vlastnost, má implicitní závislost na nadřazený prostředek. Závisí na nadřazeném prostředku, a ne na žádném z jeho dalších podřízených prostředků.
Následující příklad ukazuje účet úložiště a souborovou službu. Souborová služba má implicitní závislost na účtu úložiště.
resource storage 'Microsoft.Storage/storageAccounts@2025-06-01' = {
name: 'examplestorage'
location: resourceGroup().location
kind: 'StorageV2'
sku: {
name: 'Standard_LRS'
}
}
resource service 'Microsoft.Storage/storageAccounts/fileServices@2025-06-01' = {
name: 'default'
parent: storage
}
resource share 'Microsoft.Storage/storageAccounts/fileServices/shares@2025-06-01' = {
name: 'exampleshare'
parent: service
}
Pokud existuje implicitní závislost, nepřidávejte explicitní závislost.
Pro více informací o vnořených prostředcích viz Nastavení názvu a typu pro podřízené prostředky v Bicepsu.
Explicitní závislost
Explicitní závislost je deklarována s dependsOn vlastností. Tato vlastnost přijímá pole identifikátorů prostředků, takže můžete zadat více než jednu závislost. Pomocí operátoru:: můžete zadat vnořenou závislost prostředků.
Následující příklad ukazuje zónu DNS s názvem otherZone , která závisí na zóně DNS s názvem dnsZone:
resource dnsZone 'Microsoft.Network/dnszones@2023-07-01-preview' = {
name: 'demoZone1'
location: 'global'
}
resource otherZone 'Microsoft.Network/dnszones@2023-07-01-preview' = {
name: 'demoZone2'
location: 'global'
dependsOn: [
dnsZone
]
}
I když můžete mít sklon používat dependsOn k mapování vztahů mezi svými zdroji, je důležité pochopit, proč ho děláte. Pokud chcete například zdokumentovat, jak jsou prostředky vzájemně propojené, dependsOn není správný přístup. Po nasazení prostředek nezachovává závislosti nasazení ve svých vlastnostech, takže neexistují žádné příkazy ani operace, které umožňují zobrazit závislosti. Nastavení nepotřebných závislostí zpomaluje dobu nasazení, protože Resource Manager nemůže tyto prostředky nasadit paralelně.
I když se někdy vyžadují explicitní závislosti, je potřeba je zřídka. Ve většině případů můžete pomocí symbolického názvu znamenat závislost mezi prostředky. Pokud zjistíte, že nastavujete explicitní závislosti, měli byste zvážit, jestli neexistuje způsob, jak je odebrat.
Vizualizace závislostí
Visual Studio Code poskytuje nástroj pro vizualizaci závislostí. Otevřete soubor Bicep v editoru Visual Studio Code a vyberte tlačítko vizualizéru v levém horním rohu. Následující snímek obrazovky ukazuje závislosti virtuálního počítače.
Další kroky
Syntaxe pro nasazení prostředků můžete nalézt v tématu Deklarace prostředků v Bicep.