4.2. Inclure les métadonnées dans les images
Définir les métadonnées d’image aide Red Hat OpenShift Service sur AWS à mieux consommer vos images conteneur, permettant à Red Hat OpenShift Service sur AWS de créer une meilleure expérience pour les développeurs utilisant votre image. À titre d’exemple, vous pouvez ajouter des métadonnées pour fournir des descriptions utiles de votre image ou proposer des suggestions sur d’autres images qui peuvent également être nécessaires.
Ce sujet définit uniquement les métadonnées nécessaires à l’ensemble actuel des cas d’utilisation. D’autres métadonnées ou cas d’utilisation peuvent être ajoutés à l’avenir.
4.2.1. Définition des métadonnées d’image Copier lienLien copié sur presse-papiers!
Dans un Dockerfile, vous pouvez utiliser l’instruction LABEL pour définir les métadonnées d’image. Les étiquettes sont similaires aux variables d’environnement en ce qu’elles sont des paires de valeurs clés attachées à une image ou à un conteneur. Les étiquettes sont différentes de la variable d’environnement en ce sens qu’elles ne sont pas visibles pour l’application en cours d’exécution et qu’elles peuvent également être utilisées pour une recherche rapide des images et des conteneurs.
Documentation Docker pour plus d’informations sur l’instruction LABEL.
Les noms d’étiquettes sont généralement espacés. L’espace de noms est défini en conséquence pour refléter le projet qui va récupérer les étiquettes et les utiliser. Dans le cas de Red Hat OpenShift Service sur AWS, l’espace de noms est défini sur io.openshift et pour Kubernetes, l’espace de noms est io.k8s.
Consultez la documentation des métadonnées personnalisées Docker pour plus de détails sur le format.
La variable | Description |
---|---|
| Cette étiquette contient une liste de balises représentées comme une liste de valeurs de chaîne séparées par des virgules. Les balises sont le moyen de catégoriser les images du conteneur dans de larges zones de fonctionnalité. Les balises aident l’interface utilisateur et les outils de génération à suggérer des images de conteneur pertinentes pendant le processus de création d’applications. LABEL io.openshift.tags mongodb,mongodb24,nosql
|
| Indique une liste de balises que les outils de génération et l’interface utilisateur utilisent pour fournir des suggestions pertinentes si vous n’avez pas déjà les images de conteneur avec des balises spécifiées. Ainsi, si l’image du conteneur veut mysql et redis et que vous n’avez pas l’image du conteneur avec la balise redis, alors UI peut vous suggérer d’ajouter cette image dans votre déploiement. LABEL io.openshift.wants mongodb,redis
|
| Cette étiquette peut être utilisée pour donner aux consommateurs d’images de conteneur des informations plus détaillées sur le service ou la fonctionnalité que cette image fournit. L’interface utilisateur peut ensuite utiliser cette description avec le nom de l’image du conteneur pour fournir des informations plus conviviales aux utilisateurs finaux. LABEL io.k8s.description The MySQL 5.5 Server with master-slave replication support
|
| L’image peut utiliser cette variable pour suggérer qu’elle ne prend pas en charge la mise à l’échelle. L’UI communique ensuite cela aux consommateurs de cette image. Être non évolutif signifie que la valeur des répliques ne doit pas initialement être définie plus haut que 1. LABEL io.openshift.non-scalable true
|
IO.openshift.min-memory et io.openshift.min-cpu | Cette étiquette suggère combien de ressources l’image du conteneur a besoin pour fonctionner correctement. L’interface utilisateur peut avertir l’utilisateur que le déploiement de cette image conteneur peut dépasser son quota d’utilisateur. Les valeurs doivent être compatibles avec la quantité de Kubernetes. LABEL io.openshift.min-memory 16Gi LABEL io.openshift.min-cpu 4
|