6.7. Travailler avec des flux d'images
Les sections suivantes décrivent comment utiliser les flux d'images et les balises de flux d'images.
6.7.1. Obtenir des informations sur les flux d'images
Vous pouvez obtenir des informations générales sur le flux d'images et des informations détaillées sur toutes les balises vers lesquelles il pointe.
Procédure
Obtenir des informations générales sur le flux d'images et des informations détaillées sur toutes les balises vers lesquelles il pointe :
$ oc describe is/<image-nom>
Par exemple :
$ oc describe is/python
Exemple 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 ago
Obtenir toutes les informations disponibles sur une étiquette de flux d'images particulière :
$ oc describe istag/<image-stream>:<tag-name>
Par exemple :
$ oc describe istag/python:latest
Exemple 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=20170801
Le nombre d'informations émises est supérieur au nombre d'informations affichées.
6.7.2. Ajout de balises à un flux d'images
Vous pouvez ajouter des balises supplémentaires aux flux d'images.
Procédure
Ajouter une balise qui pointe vers l'une des balises existantes en utilisant la commande `oc tag` :
$ oc tag <image-name:tag1> <image-name:tag2>
Par exemple :
$ oc tag python:3.5 python:latest
Exemple de sortie
Tag python:latest set to python@sha256:49c18358df82f4577386404991c51a9559f243e0b1bdc366df25.
Confirmez que le flux d'images comporte deux balises, l'une,
3.5
, pointant vers l'image du conteneur externe et une autre,latest
, pointant vers la même image parce qu'elle a été créée sur la base de la première balise.$ oc describe is/python
Exemple 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.7.3. Ajout de balises pour une image externe
Vous pouvez ajouter des balises pour les images externes.
Procédure
Ajouter des balises 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>
Par exemple, cette commande associe l'image
docker.io/python:3.6.0
à la balise3.6
dans le flux d'imagespython
.$ oc tag docker.io/python:3.6.0 python:3.6
Exemple de sortie
Tag python:3.6 set to docker.io/python:3.6.0.
Si l'image externe est sécurisée, vous devez créer un secret avec des informations d'identification pour accéder à ce registre.
6.7.4. Mise à jour des balises de flux d'images
Vous pouvez mettre à jour une balise pour refléter une autre balise dans un flux d'images.
Procédure
Mettre à jour une balise :
$ oc tag <image-name:tag> <image-name:latest>
Par exemple, le texte suivant met à jour la balise
latest
pour refléter la balise3.6
dans un flux d'images :$ oc tag python:3.6 python:latest
Exemple de sortie
Tag python:latest set to python@sha256:438208801c4806548460b27bd1fbcb7bb188273d13871ab43f.
6.7.5. Suppression des balises de flux d'images
Vous pouvez supprimer les anciennes étiquettes d'un flux d'images.
Procédure
Supprime les anciennes étiquettes d'un flux d'images :
oc tag -d <image-name:tag> $ oc tag -d <image-name:tag>
Par exemple :
$ oc tag -d python:3.5
Exemple de sortie
Deleted tag default/python:3.5.
Voir Suppression des balises de flux d'images obsolètes de Cl uster Samples Operator pour plus d'informations sur la façon dont Cluster Samples Operator gère les balises de flux d'images obsolètes.
6.7.6. Configuration de l'importation périodique de balises de flux d'images
Lorsque vous travaillez avec un registre externe d'images de conteneurs, 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
Planifier l'importation d'images :
$ oc tag <repository/image> <image-name:tag> --scheduled
Par exemple :
$ oc tag docker.io/python:3.6.0 python:3.6 --scheduled
Exemple de sortie
Tag python:3.6 set to import docker.io/python:3.6.0 periodically.
Cette commande permet à OpenShift Container Platform de mettre à jour périodiquement cette balise de flux d'images. Cette période est un paramètre à l'échelle du cluster, fixé par défaut à 15 minutes.
Supprimez la vérification périodique, exécutez à nouveau la commande ci-dessus mais omettez le drapeau
--scheduled
. Cela rétablira le comportement par défaut.$ oc tag <repositiory/image> <image-name:tag>