Guide de résolution des problèmes du Cache d’artefacts
Dans ce tutoriel, vous résolvez les problèmes les plus courants pour un registre activé avec la fonctionnalité de cache d’artefacts en identifiant les symptômes, les causes et les solutions potentielles pour utiliser efficacement la fonctionnalité.
Symptômes et causes
Peuvent inclure un ou plusieurs des problèmes suivants :
Les images mises en cache n’apparaissent pas dans un référentiel
Les informations d’identification ont un état non sain
Impossible de créer une règle de cache
Impossible de créer une règle de cache à l’aide d’un caractère générique
Solutions possibles
Les images mises en cache n’apparaissent pas dans un référentiel en direct
Si vous rencontrez un problème avec les images mises en cache qui ne s’affichent pas dans votre référentiel dans Azure Container Registry(ACR), nous vous recommandons de vérifier le chemin du référentiel. Si les chemins de référentiel sont incorrects, les images mises en cache n’apparaissent pas dans votre référentiel dans ACR.
- Le serveur de connexion pour Docker Hub est
docker.io
. - Le serveur de connexion pour le Registre des artefacts Microsoft est
mcr.microsoft.com
.
Le portail Azure renseigne automatiquement ces champs pour vous. Toutefois, un grand nombre de référentiels Docker commencent par library/
dans leur chemin. Par exemple, pour mettre en cache le référentiel hello-world
, le chemin du référentiel correct est docker.io/library/hello-world
.
Informations d’identification non saines
Les informations d’identification sont un ensemble de secrets Key Vault qui fonctionnent comme un nom d’utilisateur et un mot de passe pour les référentiels privés. Les informations d’identification non saines sont souvent le résultat de la non-validité de ces secrets. Dans le Portail Azure, vous pouvez sélectionner les informations d’identification pour les modifier et appliquer des changements.
- Vérifiez que les secrets dans Azure Key Vault ont expiré.
- Vérifiez que les secrets dans Azure Key Vault sont valides.
- Vérifiez que l’accès à Azure Key Vault est attribué.
Pour attribuer l’accès à Azure Key Vault :
az keyvault set-policy --name myKeyVaultName --object-id myObjID --secret-permissions get
En savoir plus sur les coffres de clés. En savoir plus sur l’Attribution de l’accès à Azure Key Vault.
Impossible de créer une règle de cache
Limite des règles de cache
Si vous rencontrez des problèmes lors de la création d’une règle de cache, nous vous recommandons de vérifier si vous avez créé plus de 1,000 règles de cache.
Nous vous recommandons de supprimer toutes les règles de cache non souhaitées pour éviter d’atteindre la limite.
En savoir plus sur la Terminologie des caches.
Impossible de créer une règle de cache à l’aide d’un caractère générique
Si vous essayez de créer une règle de cache, mais qu’il existe un conflit avec une règle existante. Le message d’erreur suggère qu’il existe déjà une règle de cache avec un caractère générique pour le référentiel cible spécifié.
Pour résoudre ce problème, vous devez effectuer les étapes suivantes :
identifier la règle de cache existante à l’origine du conflit ; rechercher une règle existante qui utilise un caractère générique (*) pour le référentiel cible ;
supprimer la règle de cache en conflit qui chevauche le référentiel source et le caractère générique ;
créer une règle de cache avec le caractère générique et le référentiel cible souhaités ;
vérifier correctement la configuration de votre cache pour vous assurer que la nouvelle règle est correctement appliquée et qu’il n’existe aucune autre règle en conflit.
Prise en charge en amont
Le cache d’artefacts prend en charge les registres en amont suivants :
Avertissement
Les clients doivent générer un ensemble d’informations d’identification pour obtenir du contenu à partir du hub Docker.
Registres en amont | Assistance technique | Disponibilité |
---|---|---|
Docker Hub | Prend uniquement en charge les tirages authentifiés. | Azure CLI, Portail Azure |
Registre des artefacts Microsoft | Prend uniquement en charge les tirages non authentifiés. | Azure CLI, Portail Azure |
Galerie publique AWS Elastic Container Registry (ECR) | Prend uniquement en charge les tirages non authentifiés. | Azure CLI, Portail Azure |
GitHub Container Registry | Prend en charge les tirages authentifiés et non authentifiés. | Azure CLI, Portail Azure |
Quay | Prend en charge les tirages authentifiés et non authentifiés. | Azure CLI, Portail Azure |
registry.k8s.io | Prend en charge les tirages authentifiés et non authentifiés. | Azure CLI |
Google Container Registry | Prend en charge les tirages authentifiés et non authentifiés. | Azure CLI |