Použití modulu z privátního registru

Dokončeno

Naučili jste se publikovat moduly do privátního registru. V této lekci se dozvíte, jak používat moduly, které už jsou v registru jako součást šablony Bicep.

Použití modulu Bicep

Když najdete modul, který chcete použít, vytvoříte v šabloně Bicep definici modulu. Tady je příklad:

module myModule 'br:myregistry.azurecr.io/modulepath/modulename:moduleversion' = {
  name: 'my-module'
  params: {
    moduleParameter1: 'value'
  }
}

Všimněte si, že definice modulu je podobná definici místního modulu, ale s jedním důležitým rozdílem. Místo zadání cesty k souboru Bicep ve vašem systému souborů zahrnete cestu k modulu ve svém registru.

Po přidání odkazu na modul se Visual Studio Code pokusí modul automaticky stáhnout z registru. Když se modul stáhne, rozšíření Bicep pro Visual Studio Code vám při práci poskytne IntelliSense a další pomoc při vytváření kódu.

Aliasy

Pomocí aliasu registru můžete zjednodušit definice modulů. Místo zadávání názvu registru při každém definování modulu použijete jeho alias. Aliasy vám pomůžou několika způsoby:

  • Můžou udržovat váš soubor Bicep v přehledu a vyhnout se opakovanému zadávání úplného názvu registru.
  • Pokud v budoucnu změníte nový registr, můžete alias aktualizovat místo toho, abyste na něj aktualizovali všechny odkazy.
  • Některé organizace potřebují používat různé registry pro různé situace, jako je vývojová a produkční prostředí. Registr, na který alias odkazuje, můžete přepnout úpravou konfiguračního souboru. Tato změna se pak použije pro všechny soubory Bicep ve složce.

Pokud chcete definovat alias, musíte vytvořit soubor bicepconfig.json ve stejné složce jako váš soubor Bicep. V souboru bicepconfig.json definujete aliasy jako v tomto příkladu:

{
  "moduleAliases": {
    "br": {
      "MyRegistry": {
        "registry": "myregistry.azurecr.io"
      }
    }
  }
}

Když definujete modul v souboru Bicep, použijete mírně jiný typ cesty k modulu, který zahrnuje alias:

module myModule 'br/MyRegistry:bicep/my-module:v1' = {
  // ...
}

Tip

Všimněte si, že začátek cesty je br/ , když používáte alias a br: kdy ne.

Alias může také zahrnovat cestu k modulům v registru, což je užitečné, pokud pro moduly použijete společnou předponu:

{
  "moduleAliases": {
    "br": {
      "MyRegistryWithPath": {
        "registry": "myregistry.azurecr.io",
        "modulePath": "bicep"
      }
    }
  }
}

Když pak v souboru Bicep definujete modul, můžete tuto cestu vynechat:

module myModule 'br/MyRegistryWithPath:my-module:v1' = {
  // ...
}

Vytvoření souboru Bicep

Až budete připraveni nasadit soubor Bicep, nasadíte ho stejně jako obvykle. Bicep stáhne modul z registru automaticky jako součást procesu nasazení. Bicep vloží všechny moduly, na které odkazujete, do transpilované šablony ARM, což je soubor JSON.

Proces stahování modulu můžete také oddělit od sestavení pomocí bicep restore příkazu. Potom můžete pomocí bicep build příkazu s přepínačem příkazového --no-restore řádku zastavit proces sestavení ve stažení modulu. Obecně ale nemusíte moduly oddělit a nechat Bicep moduly stahovat automaticky.