Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La fonctionnalité de cache d’artefacts d’Azure Container Registry vous permet de mettre en cache des images conteneur dans des référentiels publics et privés.
Le cache d’artefacts permet des opérations d’extraction plus rapides et plus fiables via Azure Container Registry (ACR). Il utilise des fonctionnalités telles que la géoréplication et la prise en charge de la zone de disponibilité pour une disponibilité plus élevée et des tirages d’images plus rapides. Vous pouvez accéder aux registres mis en cache sur des réseaux privés pour vous aligner sur vos configurations de pare-feu et vos normes de conformité.
Le cache d’artefacts apporte une solution au défi des restrictions de pull imposées par les registres publics. Nous vous recommandons d’authentifier vos règles de cache avec vos identifiants d’origine en amont. Vous pouvez ensuite extraire des images à partir de l’ACR local, ce qui permet d’atténuer les limites de débit.
La fonctionnalité de cache d’artefact est disponible dans les niveaux de serviceDe base, Standard et Premium. Vous pouvez activer des règles de cache d’artefact dans le portail Azure ou à l’aide d’Azure CLI.
Terminologie
Lorsque vous utilisez la mise en cache des artefacts, il est utile de comprendre la terminologie suivante :
Règle de cache : règle que vous créez pour extraire des artefacts d’un référentiel pris en charge dans votre cache. Une règle de cache contient quatre parties :
-
Nom de la règle : nom de votre règle de cache. Par exemple :
Hello-World-Cache. - Source : nom du registre source.
-
Chemin d’accès du référentiel : chemin source du référentiel pour rechercher et récupérer les artefacts que vous souhaitez mettre en cache. Par exemple :
docker.io/library/hello-world. -
Nouvel espace de noms de référentiel ACR : nom du nouveau chemin d’accès au référentiel pour stocker les artefacts. Par exemple :
hello-world. Le référentiel ne peut pas déjà exister à l’intérieur de l’instance ACR.
-
Nom de la règle : nom de votre règle de cache. Par exemple :
Informations d’identification : nom d’utilisateur et mot de passe définis pour le registre source. Vous avez besoin d’informations d’identification pour vous authentifier auprès d’un référentiel public ou privé. Les informations d’identification contiennent quatre parties :
- Informations d’identification : nom de vos informations d’identification.
- Serveur de connexion au registre source : serveur de connexion de votre registre source.
- Authentification source : les emplacements du coffre de clés pour stocker les informations d’identification.
- Secrets de nom d’utilisateur et de mot de passe : secrets contenant le nom d’utilisateur et le mot de passe.
Limitations actuelles
Lorsque vous utilisez le cache d’artefacts, gardez à l’esprit les limitations suivantes :
- Le cache se produit uniquement une fois qu’au moins une extraction d’image est terminée sur l’image conteneur disponible. Pour chaque nouvelle image disponible, un nouveau tirage de l’image doit être terminé. Actuellement, le cache d’artefacts n’extrait pas automatiquement les nouvelles balises d’images lorsqu’une nouvelle balise est disponible.
- Le cache d’artefact prend en charge un maximum de 1 000 règles de cache.
- Les règles de cache d’artefact ne peuvent pas chevaucher d’autres règles de cache. En d’autres termes, si vous avez une règle de cache d’artefacts pour un certain chemin d’accès au registre, vous ne pouvez pas ajouter une autre règle de cache qui se chevauche.
Assistance assurée en amont
Le cache d’artefacts prend actuellement en charge les registres en amont suivants.
Avertissement
Pour sourcer du contenu à partir de Docker Hub, vous devez générer un ensemble d’informations d’identification à l’aide d’Azure CLI ou du portail Azure.
Certaines images Docker Hub publiques sont mappées à l’espace de noms libraryaccessible publiquement. Dans ce cas, si vous n’incluez pas le chemin d’accès de library, le cache d’artefacts l’inclura automatiquement pour vous.
| Registre en amont | Soutien | Disponibilité |
|---|---|---|
| Docker Hub | Prend uniquement en charge les pulls authentifiés. | Azure CLI et le portail Azure. |
| Registre des artefacts Microsoft | Prend uniquement en charge les pulls non authentifiés. | Azure CLI et le portail Azure. |
| Galerie publique AWS Elastic Container Registry (ECR) | Prend uniquement en charge les pulls non authentifiés. | Azure CLI et le portail Azure. |
| GitHub Container Registry | Prend en charge les pulls authentifiés et non authentifiés. | Azure CLI et le portail Azure. |
| Quay | Prend en charge les pulls authentifiés et non authentifiés. | Azure CLI et le portail Azure. |
Kubernetes Container Image Registry (registry.k8s.io) |
Prend en charge les pulls authentifiés et non authentifiés. | Azure CLI (Interface de ligne de commande Azure) |
Google Artifact Registry (*.pkg.dev) |
Prend uniquement en charge les pulls authentifiés. | Azure CLI (Interface de ligne de commande Azure) |
Ancien Container Registry Google (gcr.io) |
Prend en charge les pulls authentifiés et non authentifiés. | Azure CLI (Interface de ligne de commande Azure) |
Méthode d’authentification pour Google Artifact Registry
Pour configurer Artifact Cache à partir de votre Registre d’artefacts Google privé (GAR), nous vous recommandons d’utiliser une clé de compte de service (créée dans la console de Google Cloud) pour vous authentifier auprès de GAR. Vous pouvez définir une date d’expiration personnalisée pour la clé de compte de service (par exemple, 3 mois) et conserver la clé dans Azure Key Vault.
Bien que vous puissiez utiliser un jeton d’accès (généré à partir de l’interface CLI gcloud) pour l’authentification, il n’est pas recommandé d’utiliser le cache d’artefact, car le jeton d’accès expire après 1 heure.
Pour plus d’informations sur la création d’une clé de compte de service, consultez S’authentifier auprès de Google Artifact Registry. Une fois que vous avez la clé de compte de service, enregistrez-la en tant que secret dans Azure Key Vault. Ensuite, attribuez le mot de passe de votre ensemble d’informations d’identification à ce secret. Le nom d’utilisateur doit être défini sur :
-
_json_keysi vous utilisez la clé de compte de service au format JSON tel qu’il a été fourni lors de la création du fichier. -
_json_key_base64si vous avez encodé en base64 tout le contenu du fichier de clé de compte.
Pour plus d’informations sur la création d’un ensemble d'informations d'identification, suivez les liens disponibles dans la section suivante.
Étapes suivantes
- Découvrez comment activer la mise en cache des artefacts à l’aide du portail Azure ou d’Azure CLI.
- Découvrez plus d’informations sur l’utilisation des caractères génériques pour établir une correspondance avec plusieurs chemins d’accès dans le registre d’images conteneur.