Usar um módulo de um registro privado
Você aprendeu a publicar módulos em um registro privado. Nesta unidade, você aprenderá a usar módulos que já estão em um registro como parte de um modelo do Bicep.
Usar um módulo Bicep
Quando você encontrar um módulo que deseja usar, crie uma definição de módulo em seu modelo Bicep. Aqui está um exemplo:
module myModule 'br:myregistry.azurecr.io/modulepath/modulename:moduleversion' = {
name: 'my-module'
params: {
moduleParameter1: 'value'
}
}
Observe que a definição do módulo é semelhante à de um módulo local, mas com uma diferença importante. Em vez de especificar o caminho para um arquivo Bicep no sistema de arquivos, você inclui o caminho para o módulo no registro.
Após você adicionar uma referência ao módulo, o Visual Studio Code tenta baixar o módulo automaticamente do registro. Quando o módulo é baixado, a extensão Bicep para Visual Studio Code oferece IntelliSense e outra assistência de criação de código enquanto você trabalha.
Apelidos
Você pode usar um alias do Registro para simplificar as definições do módulo. Em vez de especificar o nome do registro toda vez que você definir um módulo, use seu alias. Os aliases ajudam você de algumas maneiras:
- Eles podem manter seu arquivo Bicep mais organizado e ajudar você a evitar digitar o nome completo do registro repetidamente.
- Se você alterar para um novo registro no futuro, poderá atualizar o alias em vez de atualizar todas as referências a ele.
- Algumas organizações precisam usar registros diferentes para diferentes situações, como para ambientes de desenvolvimento e produção. Você pode alternar para o registro a que um alias se refere modificando um arquivo de configuração. Em seguida, a alteração se aplica a todos os arquivos Bicep na pasta.
Para definir um alias, você precisa criar um arquivo bicepconfig.json na mesma pasta que o arquivo Bicep. No arquivo bicepconfig.json , você define aliases como neste exemplo:
{
"moduleAliases": {
"br": {
"MyRegistry": {
"registry": "myregistry.azurecr.io"
}
}
}
}
Ao definir um módulo em um arquivo Bicep, você usa um tipo ligeiramente diferente de caminho de módulo, que inclui o alias:
module myModule 'br/MyRegistry:bicep/my-module:v1' = {
// ...
}
Dica
Observe que o início do caminho é br/
quando você usa um alias e br:
quando não usa.
Um alias também pode incluir o caminho para seus módulos dentro do registro, o que é útil se você usa um prefixo comum para seus módulos:
{
"moduleAliases": {
"br": {
"MyRegistryWithPath": {
"registry": "myregistry.azurecr.io",
"modulePath": "bicep"
}
}
}
}
Em seguida, você pode omitir o caminho ao definir o módulo no arquivo Bicep:
module myModule 'br/MyRegistryWithPath:my-module:v1' = {
// ...
}
Criar seu arquivo Bicep
Quando você estiver pronto para implantar o arquivo Bicep, implante-o da mesma forma que faria normalmente. O Bicep baixa o módulo do registro automaticamente como parte do processo de implantação. O Bicep incorpora todos os módulos aos quais você se refere no modelo ARM transcompilado, que é um arquivo JSON.
Você também pode separar o processo de download do módulo e o build usando o comando bicep restore
. Em seguida, você pode usar o comando bicep build
com a opção de linha de comando --no-restore
para impedir que o processo de build baixe o módulo. No entanto, em geral, você não precisa separar os módulos e deixar o Bicep baixá-los automaticamente.