Partilhar via


Mapas de configuração para instâncias de contêiner do Azure

Um config map é uma propriedade que pode usar para aplicar configurações de contentores semelhantes a variáveis de ambiente e volumes secretos. O processo é diferente de usar variáveis de ambiente ou volumes secretos, onde tens de reiniciar o pod para aplicar as definições. Usar um mapa de configuração para aplicar definições não requer reiniciar para que as alterações tenham efeito.

Pode usar Azure Container Instances para criar instâncias de container com ou sem mapas de configuração. Também podes atualizá-los a qualquer momento após a criação usando mapas de configuração. Atualizar os mapas de configuração num grupo de contentores já em execução é uma tarefa que pode realizar rapidamente sem comprometer o tempo de funcionamento do contentor.

Como funciona

Pode incluir um mapa de configuração nas propriedades do contentor ou num perfil de grupo de contentores. Criar um perfil de grupo de contêineres com as configurações do mapa de configuração torna a aplicação dessas configurações simples e fácil de automatizar.

Criar um perfil de grupo de contêineres com definições de mapa de configuração

Crie um perfil de grupo de contentores com definições de mapa de configuração usando az container container-group-profile create.

az container container-group-profile create \
    --resource-group myResourceGroup \
    --name myContainerGroupProfile \
    --location WestCentralUS \
    --image nginx \
    --os-type Linux \ 
    --ip-address Public \ 
    --ports 8000 \ 
    --cpu 1 \
    --memory 1.5 \
    --restart-policy never \
    --config-map key1=value1 key2=value2

Aplica as definições do mapa de configuração usando o perfil do grupo de contentores

Aplicar as definições do mapa de configuração armazenadas num perfil de grupo de contentores exige que atualize o contentor. Também deve especificar o perfil do grupo de contentores que deve estar associado à atualização.

Aplique as definições do mapa de configuração armazenadas no perfil do grupo de contentores usando o az-container create.

az container create 
        --resource-group myResourceGroup \ 
        --name myContainer \ 
        --location WestCentralUS \
        --container-group-profile-id "/subscriptions/{SubscriptionID}/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroupProfiles/myContainerGroupProfile" \
        --container-group-profile-revision 1 

Aplicar as definições do mapa de configuração sem o perfil do grupo de contentores

Também podes aplicar as definições do config map diretamente à instância, especificando as definições do config map nos comandos create.

Aplica as definições do mapa de configuração usando o az-container create.

az container create \
    --resource-group myResourceGroup \ 
    --name myContainer \
    --location WestCentralUS \ 
    --config-map key1=value1 key2=value2 
        

Mapas de configuração em contentores Linux

Depois de a atualização ser aplicada a um contentor existente, vês os valores montados no contentor Linux sem necessidade de reiniciar.

/mnt/configmap/<containername>/key1 with value as "value1"

/mnt/configmap/<containername>/key2 with value as "value2"

Mapas de configuração em contentores do Windows

Depois de a atualização ser aplicada a um contentor existente, pode obter os pares chave/valor do mapa de configuração no contentor do Windows fazendo a seguinte chamada, sem necessidade de reiniciar. Estes valores não estão montados em qualquer lugar para contentores do Windows, como é o caso para contentores Linux.

Invoke-Expression "$Env:ConfigMapURI"