6.6. En travaillant avec les flux d’images
Les sections suivantes décrivent comment utiliser les flux d’images et les balises de flux d’images.
Évitez d’exécuter des charges de travail ou de partager l’accès aux projets par défaut. Les projets par défaut sont réservés à l’exécution de composants de cluster de base.
Les projets par défaut suivants sont considérés comme hautement privilégiés: par défaut, kube-public, kube-system, openshift, openshift-infra, openshift-node, et d’autres projets créés par système qui ont l’étiquette openshift.io / run-level définie à 0 ou 1. La fonctionnalité qui repose sur des plugins d’admission, tels que l’admission de sécurité pod, les contraintes de contexte de sécurité, les quotas de ressources de cluster et la résolution de référence d’image, ne fonctionne pas dans des projets hautement privilégiés.
6.6.1. Informations sur les flux d’images Copier lienLien copié sur presse-papiers!
Il est possible d’obtenir des informations générales sur le flux d’images et des informations détaillées sur toutes les balises qu’il pointe.
Procédure
Afin d’obtenir des informations générales sur le flux d’images et des informations détaillées sur toutes les balises qu’il pointe, entrez la commande suivante:
$ oc describe is/<image-name>À titre d’exemple:
$ oc describe is/pythonExemple de sortie
Name: python Namespace: default Created: About a minute ago Labels: <none> Annotations: openshift.io/image.dockerRepositoryCheck=2017-10-02T17:05:11Z Docker Pull Spec: docker-registry.default.svc:5000/default/python Image Lookup: local=false Unique Images: 1 Tags: 1 3.5 tagged from centos/python-35-centos7 * centos/python-35-centos7@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 About a minute agoAfin d’obtenir toutes les informations disponibles sur une balise de flux d’images particulière, entrez la commande suivante:
$ oc describe istag/<image-stream>:<tag-name>À titre d’exemple:
$ oc describe istag/python:latestExemple de sortie
Image Name: sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 Docker Image: centos/python-35-centos7@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 Name: sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 Created: 2 minutes ago Image Size: 251.2 MB (first layer 2.898 MB, last binary layer 72.26 MB) Image Created: 2 weeks ago Author: <none> Arch: amd64 Entrypoint: container-entrypoint Command: /bin/sh -c $STI_SCRIPTS_PATH/usage Working Dir: /opt/app-root/src User: 1001 Exposes Ports: 8080/tcp Docker Labels: build-date=20170801NoteIl y a plus d’informations que celles affichées.
Entrez la commande suivante pour découvrir l’architecture ou le système d’exploitation qu’une balise de flux d’image prend en charge:
$ oc get istag <image-stream-tag> -ojsonpath="{range .image.dockerImageManifests[*]}{.os}/{.architecture}{'\n'}{end}"À titre d’exemple:
$ oc get istag busybox:latest -ojsonpath="{range .image.dockerImageManifests[*]}{.os}/{.architecture}{'\n'}{end}"Exemple de sortie
linux/amd64 linux/arm linux/arm64 linux/386 linux/mips64le linux/ppc64le linux/riscv64 linux/s390x
6.6.2. Ajout de tags à un flux d’images Copier lienLien copié sur presse-papiers!
Il est possible d’ajouter des balises supplémentaires aux flux d’images.
Procédure
Ajoutez une balise qui pointe vers l’une des balises existantes en utilisant la commande 'oc tag':
$ oc tag <image-name:tag1> <image-name:tag2>À titre d’exemple:
$ oc tag python:3.5 python:latestExemple de sortie
Tag python:latest set to python@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25.Confirmez que le flux d’image a deux balises, une, 3.5, pointant vers l’image du conteneur externe et une autre balise, la dernière, pointant vers la même image parce qu’elle a été créée en fonction de la première balise.
$ oc describe is/pythonExemple de sortie
Name: python Namespace: default Created: 5 minutes ago Labels: <none> Annotations: openshift.io/image.dockerRepositoryCheck=2017-10-02T17:05:11Z Docker Pull Spec: docker-registry.default.svc:5000/default/python Image Lookup: local=false Unique Images: 1 Tags: 2 latest tagged from python@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 * centos/python-35-centos7@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 About a minute ago 3.5 tagged from centos/python-35-centos7 * centos/python-35-centos7@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25 5 minutes ago
6.6.3. Ajout de tags pour une image externe Copier lienLien copié sur presse-papiers!
Ajoutez des tags pour des images externes.
Procédure
Ajoutez des tags pointant vers des images internes ou externes, en utilisant la commande oc tag pour toutes les opérations liées aux balises:
$ oc tag <repository/image> <image-name:tag>Cette commande cartographie par exemple l’image docker.io/python:3.6.0 à la balise 3.6 dans le flux d’images python.
$ oc tag docker.io/python:3.6.0 python:3.6Exemple de sortie
Tag python:3.6 set to docker.io/python:3.6.0.Lorsque l’image externe est sécurisée, vous devez créer un secret avec des informations d’identification pour accéder à ce registre.
6.6.4. La mise à jour des balises de flux d’images Copier lienLien copié sur presse-papiers!
Il est possible de mettre à jour une balise pour refléter une autre balise dans un flux d’images.
Procédure
Actualisez une balise:
$ oc tag <image-name:tag> <image-name:latest>À titre d’exemple, les mises à jour suivantes de la dernière balise pour refléter la balise 3.6 dans un flux d’images:
$ oc tag python:3.6 python:latestExemple de sortie
Tag python:latest set to python@sha256:438208801c4806548460b27bd1fbcb7bb188273d13871ab43f.
6.6.5. La suppression des balises de flux d’images Copier lienLien copié sur presse-papiers!
Il est possible de supprimer les anciennes balises d’un flux d’images.
Procédure
Enlever les anciennes balises d’un flux d’images:
$ oc tag -d <image-name:tag>À titre d’exemple:
$ oc tag -d python:3.6Exemple de sortie
Deleted tag default/python:3.6
Consultez Supprimer les balises de flux d’images obsolètes de l’opérateur d’échantillons de cluster pour plus d’informations sur la façon dont l’opérateur d’échantillons de cluster gère les balises de flux d’images dépréciées.
6.6.6. Configuration de l’importation périodique des balises de flux d’images Copier lienLien copié sur presse-papiers!
Lorsque vous travaillez avec un registre d’images de conteneur externe, pour réimporter périodiquement une image, par exemple pour obtenir les dernières mises à jour de sécurité, vous pouvez utiliser le drapeau --scheduled.
Procédure
Calendrier d’importation d’images:
$ oc tag <repository/image> <image-name:tag> --scheduledÀ titre d’exemple:
$ oc tag docker.io/python:3.6.0 python:3.6 --scheduledExemple de sortie
Tag python:3.6 set to import docker.io/python:3.6.0 periodically.Cette commande fait que Red Hat OpenShift Service sur AWS met périodiquement à jour cette balise de flux d’images particulière. Cette période est un paramètre à l’échelle du cluster défini à 15 minutes par défaut.
Enlevez la vérification périodique, redémarrez au-dessus de la commande, mais omettez le drapeau --scheduled. Cela réinitialisera son comportement par défaut.
$ oc tag <repositiory/image> <image-name:tag>