Webhooks de Azure Container Registry

Un registro de contenedor de Azure almacena y administra imágenes privadas de contenedor de Docker, de una forma similar a la que Docker Hub almacena imágenes públicas. También puede hospedar repositorios para gráficos de Helm (versión preliminar), un formato de empaquetado para implementar aplicaciones en Kubernetes. Puede usar webhooks para desencadenar eventos cuando determinadas acciones tienen lugar en uno de los repositorios de registro. Los webhooks pueden responder a eventos en el nivel de registro o pueden limitarse a una etiqueta de repositorio específica. Con un registro con replicación geográfica, puede configurar cada webhook para responder a eventos en una réplica regional específica.

El punto de conexión de un webhook debe ser accesible públicamente desde el registro. Puede configurar solicitudes de webhook del registro para autenticarse en un punto de conexión protegido.

Para obtener información detallada sobre las solicitudes de webhook, consulte Referencia de esquema de webhook de Azure Container Registry.

Prerrequisitos

Creación de webhooks: Azure Portal

  1. Inicie sesión en Azure Portal.
  2. Vaya al registro de contenedor en el que desea crear un webhook.
  3. En Servicios, seleccione Webhooks.
  4. Seleccione Agregar en la barra de herramientas del webhook.
  5. Complete el formulario Crear webhook con la siguiente información:
Value Descripción
Nombre de webhook El nombre que desea dar al webhook. Solo puede contener letras y números, y su longitud debe oscilar entre 5 y 50 caracteres.
Location Para un registro con replicación geográfica, especifique la región de Azure de la réplica del registro.
URI de servicio El identificador URI donde el webhook debe enviar notificaciones POST.
Encabezados personalizados Los encabezados que van a pasar junto con la solicitud POST. Deben tener el formato "clave: valor".
Acciones de desencadenador Acciones que desencadenan el webhook. Las acciones incluyen insertar y eliminar imágenes, insertar y eliminar gráficos de Helm, y poner imágenes en cuarentena. Puede elegir una o varias acciones para desencadenar el webhook.
Status El estado del webhook después de su creación. Esto está habilitada de manera predeterminada.
Ámbito El ámbito en el que trabaja el webhook. Si no se especifica, el ámbito sirve para todos los eventos del registro. Se puede especificar para un repositorio o una etiqueta con el formato "repositorio:etiqueta"o "repositorio:*" para todas las etiquetas de un repositorio.

Formulario de webhook de ejemplo:

Captura de pantalla que muestra la interfaz de usuario de creación del webhook de ACR en Azure Portal.

Creación de webhooks: CLI de Azure

Para crear un webhook mediante la CLI de Azure, use el comando az acr webhook create. El siguiente comando crea un webhook para los eventos de eliminación de imágenes en el registro mycontainerregistry:

az acr webhook create --registry mycontainerregistry --name myacrwebhook01 --actions delete --uri http://webhookuri.com

Webhook de prueba

Azure Portal

Antes de usar el webhook, puede probarlo con el botón Ping. El comando Ping envía una solicitud POST genérica al punto de conexión especificado y registra la respuesta. Mediante la característica de ping puede comprobar que ha configurado correctamente el webhook.

  1. Seleccione el webhook que desea probar.
  2. En la barra de herramientas superior, seleccione Ping.
  3. Compruebe la respuesta del punto de conexión en la columna ESTADO HTTP.

Interfaz de usuario de creación de webhook ACR en Azure Portal

Azure CLI

Para probar un webhook de ACR con la CLI de Azure, use el comando az acr webhook ping.

az acr webhook ping --registry mycontainerregistry --name myacrwebhook01

Para ver los resultados, use el comando az acr webhook list-events.

az acr webhook list-events --registry mycontainerregistry08 --name myacrwebhook01

Eliminación del webhook

Azure Portal

Se puede eliminar cada webhook seleccionando uno y, después, con el botón Eliminar en Azure Portal.

Azure CLI

az acr webhook delete --registry mycontainerregistry --name myacrwebhook01

Pasos siguientes

Referencia del esquema de webhook

Para más información sobre el formato y las propiedades de las cargas del evento JSON emitidas por Azure Container Registry, consulte la referencia del esquema de webhook:

Referencia de esquema de webhook de Azure Container Registry

Eventos de Event Grid

Además de los eventos de webhook de registro nativos descritos en este artículo, Azure Container Registry puede emitir eventos a Event Grid:

Inicio rápido: Envío de eventos del registro de contenedor a Event Grid