Beeldextracties optimaliseren met artefact-cache in Azure Container Registry

Met de cachefunctie voor artefacten van Azure Container Registry kunt u containerinstallatiekopieën opslaan in zowel openbare als privéopslagplaatsen.

Artefacten cache maakt snellere en meer betrouwbare pull-bewerkingen mogelijk via Azure Container Registry (ACR). Het maakt gebruik van functies zoals geo-replicatie en ondersteuning voor beschikbaarheidszones om een hogere beschikbaarheid en snellere image pulls te realiseren. U hebt toegang tot in de cache opgeslagen registers via privénetwerken om te voldoen aan uw firewallconfiguraties en nalevingsstandaarden.

De artefactcache heeft betrekking op de uitdaging van pull-limieten die worden opgelegd door openbare registers. U wordt aangeraden uw cacheregels te verifiëren met uw upstream-bronreferenties. Vervolgens kunt u afbeeldingen ophalen uit de lokale ACR, waardoor ratelimieten worden beheerd.

De cachefunctie voor artefacten is beschikbaar in de servicelagenBasic, Standard en Premium. U kunt cacheregels voor artefacten inschakelen in de Azure-portal of met behulp van Azure CLI.

Terminologie

Wanneer u met artefactcaching werkt, is het handig om de volgende terminologie te begrijpen:

  • Cacheregel: een regel die u maakt om artefacten op te halen uit een ondersteunde opslagplaats in uw cache. Een cacheregel bevat vier delen:

    • Regelnaam: de naam van de cacheregel. Bijvoorbeeld: Hello-World-Cache.
    • Bron: De naam van het bronregister.
    • Pad naar opslagplaats: het bronpad van de opslagplaats om artefacten te vinden en op te halen die u in de cache wilt opslaan. Bijvoorbeeld: docker.io/library/hello-world.
    • Naamruimte voor nieuwe ACR-opslagplaats: de naam van het pad naar de nieuwe opslagplaats voor het opslaan van artefacten. Bijvoorbeeld: hello-world. De opslagplaats kan nog niet bestaan in het ACR-exemplaar.
  • Referenties: Een gebruikersnaam en wachtwoord ingesteld voor het bronregister. U hebt inloggegevens nodig om te authenticeren met een openbare of privé-opslagplaats. Referenties bevatten vier onderdelen:

    • Referenties: de naam van uw referenties.
    • Aanmeldingsserver voor bronregister: de aanmeldingsserver van uw bronregister.
    • Bronverificatie: de locaties van de sleutelkluis voor het opslaan van inloggegevens.
    • Geheimen voor gebruikersnaam en wachtwoord: geheimen die de gebruikersnaam en het wachtwoord bevatten.

Huidige beperkingen

Houd bij het gebruik van artefactcache rekening met de volgende beperkingen:

  • Cache vindt alleen plaats nadat ten minste één afbeelding is opgehaald van de beschikbare containerafbeelding. Voor elke nieuwe image die beschikbaar is, moet een nieuwe image pull worden voltooid. Op dit moment haalt de artefactcache niet automatisch nieuwe tags met afbeeldingen op wanneer er een nieuwe tag beschikbaar is.
  • Artefactcache ondersteunt maximaal 1000 cacheregels.
  • Cacheregels voor artefacten kunnen niet overlappen met andere cacheregels. Met andere woorden, als u een cacheregel voor artefacten voor een bepaald registerpad hebt, kunt u geen andere cacheregel toevoegen die hiermee overlapt.

Upstream-ondersteuning

De artefactcache ondersteunt momenteel de volgende upstream-registers.

Waarschuwing

Als u inhoud wilt ophalen uit Docker Hub, moet u een referentiesset genereren met behulp van Azure CLI of de Azure-portal.

Sommige openbare Docker Hub-afbeeldingen zijn toegewezen aan de publiek toegankelijke naamruimte library. Als u het pad in library dit geval niet opneemt, wordt het automatisch door de artefactcache voor u opgenomen.

Upstreamregister Ondersteuning Beschikbaarheid
Docker Hub Ondersteunt alleen geverifieerde pulls. Azure CLI, Azure portal
Docker-versterkte afbeeldingen (dhi.io) Ondersteunt alleen geverifieerde pulls. Azure CLI
Azure Container Registry (azurecr.io) Ondersteunt alleen geverifieerde pulls. Azure CLI
Microsoft-artefactregister Ondersteunt alleen niet-geverifieerde pulls. Azure CLI, Azure portal
Openbare GALERIE AWS Elastic Container Registry (ECR) Ondersteunt alleen niet-geverifieerde pulls. Azure CLI, Azure portal
GitHub Container Registry Ondersteunt zowel geverifieerde als niet-geverifieerde pulls. Azure CLI, Azure portal
Kade Ondersteunt zowel geverifieerde als niet-geverifieerde pulls. Azure CLI, Azure portal
Kubernetes Containerafbeeldingsregister (registry.k8s.io) Ondersteunt zowel geverifieerde als niet-geverifieerde pulls. Azure CLI
Google Artifact Registry (*.pkg.dev) Ondersteunt alleen geverifieerde pulls. Azure CLI
Verouderde Google Container Registry (gcr.io) Ondersteunt zowel geverifieerde als niet-geverifieerde pulls. Azure CLI
NVIDIA NGC Container Registry (nvcr.io) Ondersteunt zowel geverifieerde als niet-geverifieerde pulls. Azure CLI, Azure portal

Verificatiemethode voor Google Artifact Registry

Als u artefactcache wilt instellen vanuit uw persoonlijke Google Artifact Registry (GAR), raden we u aan een serviceaccountsleutel (gemaakt in de Console van Google Cloud) te gebruiken om te verifiëren met GAR. U kunt een aangepaste vervaldatum definiëren voor de serviceaccountsleutel (bijvoorbeeld 3 maanden) en de sleutel behouden in Azure Key Vault.

Hoewel u een toegangstoken (gegenereerd op basis van gcloud CLI) kunt gebruiken om te verifiëren, wordt het niet aanbevolen voor gebruik met artefactcache, omdat het toegangstoken na 1 uur verloopt.

Zie Verifiëren met Google Artifact Registry voor meer informatie over het maken van een serviceaccountsleutel. Nadat u de serviceaccountsleutel hebt, slaat u deze op als een geheim in Azure Key Vault. Wijs vervolgens het wachtwoord van uw referentieset naar dit geheim. De gebruikersnaam moet worden ingesteld op:

  • _json_key als u de sleutel van het serviceaccount in JSON-indeling gebruikt zoals deze is opgegeven toen u het bestand maakte.
  • _json_key_base64 als u met base64 alle inhoud van het accountsleutelbestand hebt gecodeerd.

Volg de koppelingen in de volgende sectie voor meer informatie over het maken van een referentieset.

Volgende stappen

  • Meer informatie over het inschakelen van caching van artefacten met behulp van de Azure-portal of Azure CLI.
  • Leer hoe u jokertekens kunt gebruiken om meerdere paden binnen het containerimagergister te matchen.