Azure Container Registry (ACR) es el registro privado de Azure para imágenes de contenedor y otros artefactos OCI (Open Container Initiative), como los Helm charts. Tu pipeline de compilación sube (push) imágenes a él, y App Service, Container Apps y AKS las descargan (pull) desde ahí. Mantener las imágenes en un registro de la misma región que tu cómputo hace que las descargas sean rápidas y que el tráfico se quede en la red de Microsoft.
Un registro tiene un nombre de servidor de inicio de sesión (login server) con la forma myregistry.azurecr.io, y las referencias de imagen se ven como myregistry.azurecr.io/orders-api:1.4.2. La parte después del servidor es el repositorio, y la parte después de los dos puntos es la etiqueta (tag). Creas uno con az acr create --resource-group rg --name myregistry --sku Basic e inicias sesión con tu cliente local de Docker usando az acr login --name myregistry, que usa tu inicio de sesión de Microsoft Entra ID en lugar de una contraseña almacenada.
ACR tiene tres niveles de servicio, y los tres admiten las mismas funciones principales: subir y descargar imágenes, autenticación con Microsoft Entra, ACR Tasks, webhooks y permisos con alcance de repositorio. Los niveles se diferencian sobre todo en el almacenamiento incluido, el rendimiento (cuántas descargas y subidas simultáneas funcionan bien) y un conjunto de funciones avanzadas. Basic es el punto de entrada optimizado en costo para aprender y para cargas pequeñas. Standard agrega más almacenamiento y rendimiento y sirve para la mayoría de las cargas de producción. Premium tiene el mayor almacenamiento y rendimiento y es el único nivel con las funciones empresariales que se describen a continuación.
La replicación geográfica (geo-replication, solo Premium) convierte un registro en un registro multirregión. Agregas réplicas con az acr replication create --registry myregistry --location westeurope. Sigues subiendo una sola vez al mismo login server; ACR copia el contenido a cada réplica y los clientes se enrutan a la más cercana. Beneficios: descargas más rápidas y baratas para cómputo en varias regiones (sin tráfico de salida entre regiones) y descargas que siguen funcionando si una región tiene un problema. La alternativa en niveles inferiores, registros separados por región, implica subir varias veces y administrar varios nombres.
Los private endpoints (Azure Private Link) también son solo de Premium. Un private endpoint le da al registro una dirección IP privada dentro de tu red virtual y, con una zona DNS privada, el nombre del login server se resuelve a esa IP desde dentro de la red. Luego puedes deshabilitar el acceso de red público para que el registro no sea accesible desde internet en absoluto. Premium también agrega funciones como reglas de firewall para redes seleccionadas, claves de cifrado administradas por el cliente y mayor rendimiento para clústeres grandes.
Cambiar de nivel es sencillo: az acr update --name myregistry --sku Premium actualiza en el mismo lugar sin cambiar el login server ni perder imágenes. Eso significa que puedes empezar con Basic en desarrollo y subir de nivel cuando necesites una función exclusiva de Premium.
Términos clave
- Login server (servidor de inicio de sesión)
- El nombre DNS del registro, como myregistry.azurecr.io, que se usa como prefijo de cada referencia de imagen.
- Geo-replication (replicación geográfica)
- Una función de ACR Premium que mantiene copias de un registro en varias regiones detrás de un único login server.
- Private endpoint (punto de conexión privado)
- Una interfaz de red con una IP privada en tu VNet que se conecta de forma privada a un servicio, como un registro Premium.
- Repository (repositorio)
- Una colección con nombre de imágenes relacionadas en un registro, que se distinguen por etiquetas y digests.
Un minorista ejecuta su API en Container Apps en East US y West Europe. Con un registro Standard en East US, las réplicas europeas descargaban a través del Atlántico en cada escalado horizontal. Actualizaron el registro a Premium, agregaron una réplica en West Europe y un private endpoint en cada VNet, y luego desactivaron el acceso de red público. Las subidas siguen yendo a un solo login server, y cada región ahora descarga localmente a través de una IP privada.
Comprueba lo que sabes
Una empresa necesita un registro que sirva imágenes a clústeres en tres regiones con descargas locales. ¿Qué nivel y qué función?
Premium con replicación geográfica, porque solo Premium puede replicar un registro a varias regiones detrás de un único login server.
¿Puedes actualizar un registro Basic a Premium sin volver a subir las imágenes?
Sí. az acr update --sku Premium cambia el nivel en el mismo lugar y conserva el login server y todo el contenido.