Utilizar webhooks do Azure Container Registry
Os registos de contentores do Azure armazenam e gerem imagens de contentores do Docker privadas, de forma semelhante a como o Docker Hub armazena imagens do Docker públicas. Ele também pode hospedar repositórios para gráficos Helm (visualização), um formato de empacotamento para implantar aplicativos no Kubernetes. Você pode usar webhooks para acionar eventos quando determinadas ações ocorrem em um de seus repositórios de registro. Os webhooks podem responder a eventos ao nível do registo ou podem ser limitados a uma etiqueta de repositório específica. Com um registro replicado geograficamente , você configura cada webhook para responder a eventos em uma réplica regional específica.
O ponto final de um webhook tem de estar acessível publicamente a partir do registo. Pode configurar pedidos de webhook de registo para autenticar num ponto final seguro.
Para obter detalhes sobre solicitações de webhook, consulte Referência de esquema de webhook do Registro de Contêiner do Azure.
Pré-requisitos
- Registo de contentores do Azure - crie um registos de contentores na sua subscrição do Azure. Por exemplo, use o portal do Azure ou a CLI do Azure. As camadas de serviço do Registro de Contêiner do Azure têm cotas de webhooks diferentes.
- CLI do Docker - Para configurar seu computador local como um host do Docker e acessar os comandos da CLI do Docker, instale o Docker Engine.
Criar webhook - Portal do Azure
- Inicie sessão no portal do Azure.
- Navegue até o registro de contêiner no qual você deseja criar um webhook.
- Em Serviços, selecione Webhooks.
- Selecione Adicionar na barra de ferramentas do webhook.
- Preencha o formulário Criar webhook com as seguintes informações:
valor | Description |
---|---|
Nome do Webhook | O nome que você deseja dar ao webhook. Pode conter apenas letras e números, e deve ter de 5 a 50 caracteres. |
Location | Para um registro replicado geograficamente , especifique a região do Azure da réplica do Registro. |
URI de serviço | O URI para onde o webhook deve enviar notificações POST. |
Custom headers | Cabeçalhos que você deseja passar junto com a solicitação POST. Eles devem estar no formato "chave: valor". |
Ações de desencadeamento | Ações que acionam o webhook. As ações incluem envio de imagem, exclusão de imagem, envio de gráfico de leme, exclusão de gráfico de leme e quarentena de imagem. Você pode escolher uma ou mais ações para acionar o webhook. |
Status | O status do webhook após sua criação. Está ativada por predefinição. |
Âmbito | O escopo no qual o webhook funciona. Se não for especificado, o escopo será para todos os eventos no Registro. Ele pode ser especificado para um repositório ou uma tag usando o formato "repository:tag" ou "repository:*" para todas as tags em um repositório. |
Exemplo de formulário webhook:
Criar webhook - CLI do Azure
Para criar um webhook usando a CLI do Azure, use o comando az acr webhook create . O comando a seguir cria um webhook para todos os eventos de exclusão de imagem no registro mycontainerregistry:
az acr webhook create --registry mycontainerregistry --name myacrwebhook01 --actions delete --uri http://webhookuri.com
Webhook de teste
Portal do Azure
Antes de usar o webhook, você pode testá-lo com o botão Ping . O ping envia uma solicitação POST genérica para o ponto de extremidade especificado e registra a resposta. Usar o recurso de ping pode ajudá-lo a verificar se configurou corretamente o webhook.
- Selecione o webhook que deseja testar.
- Na barra de ferramentas superior, selecione Ping.
- Verifique a resposta do ponto de extremidade na coluna HTTP STATUS .
CLI do Azure
Para testar um webhook ACR com a CLI do Azure, use o comando az acr webhook ping .
az acr webhook ping --registry mycontainerregistry --name myacrwebhook01
Para ver os resultados, use o comando az acr webhook list-events .
az acr webhook list-events --registry mycontainerregistry08 --name myacrwebhook01
Excluir webhook
Portal do Azure
Cada webhook pode ser excluído selecionando o webhook e, em seguida, o botão Excluir no portal do Azure.
CLI do Azure
az acr webhook delete --registry mycontainerregistry --name myacrwebhook01
Próximos passos
Referência do esquema Webhook
Para obter detalhes sobre o formato e as propriedades das cargas úteis do evento JSON emitidas pelo Registro de Contêiner do Azure, consulte a referência do esquema do webhook:
Referência de esquema webhook do Registro de Contêiner do Azure
Eventos da Grade de Eventos
Além dos eventos de webhook do Registro nativo discutidos neste artigo, o Registro de Contêiner do Azure pode emitir eventos para a Grade de Eventos:
Guia de início rápido: enviar eventos do Registro de contêiner para a Grade de Eventos