Dans cette étape, vous apprendrez à « enregistrer » une image dans un flux pour une plateforme spécifique. En termes Docker, cela se fait généralement en étiquetant (tagging) une image existante avec un nouveau nom qui inclut le flux souhaité et éventuellement des informations sur la plateforme. L'étiquetage d'une image crée essentiellement un nouveau pointeur vers une couche d'image existante, vous permettant de faire référence à la même image avec un nom et une étiquette différents.
La commande de base pour étiqueter une image est docker tag
. La syntaxe est la suivante :
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
SOURCE_IMAGE[:TAG]
: Il s'agit du nom et de l'étiquette facultative de l'image existante que vous souhaitez étiqueter.
TARGET_IMAGE[:TAG]
: Il s'agit du nouveau nom et de l'étiquette facultative que vous souhaitez attribuer à l'image. La partie TARGET_IMAGE
représente le nom du flux.
Utilisons l'image ubuntu
que nous avons téléchargée à l'étape précédente. Nous allons l'étiqueter avec un nouveau nom de flux, par exemple myubuntu
.
Tout d'abord, vérifions l'image ubuntu
existante et son ID :
docker images ubuntu
Vous verrez une sortie similaire à celle-ci, en notant l'IMAGE ID
:
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest d621e9f15c2f 2 weeks ago 72.8MB
Maintenant, étiquetons l'image ubuntu:latest
avec le nouveau nom de flux myubuntu
et l'étiquette v1.0
:
docker tag ubuntu:latest myubuntu:v1.0
Si la commande réussit, elle ne produit pas beaucoup de sortie. Elle crée simplement la nouvelle étiquette.
Maintenant, listons les images à nouveau pour voir l'image nouvellement étiquetée :
docker images
Vous devriez maintenant voir à la fois l'image originale ubuntu:latest
et la nouvelle image myubuntu:v1.0
, toutes deux pointant vers le même IMAGE ID
:
REPOSITORY TAG IMAGE ID CREATED SIZE
myubuntu v1.0 d621e9f15c2f 2 weeks ago 72.8MB
ubuntu latest d621e9f15c2f 2 weeks ago 72.8MB
hello-world latest d2c94e258dcb 2 months ago 13.3kB
Notez que myubuntu:v1.0
a le même IMAGE ID
que ubuntu:latest
. Cela confirme que myubuntu:v1.0
n'est qu'une nouvelle référence aux mêmes données d'image sous-jacentes.
Bien que la commande docker tag
elle-même ne gère pas explicitement les plateformes lors du processus d'étiquetage, l'image elle-même peut être construite pour une plateforme spécifique. Lorsque vous téléchargez une image, Docker télécharge généralement l'image pour l'architecture de votre système. Si vous avez besoin de travailler avec des images pour différentes plateformes, vous utiliserez généralement des outils tels que docker buildx
pour construire des images multi-plateformes ou spécifier la plateforme lors de l'opération de téléchargement (par exemple, docker pull --platform linux/amd64 ubuntu
). Cependant, dans le cadre de « l'enregistrement » d'une image existante dans un flux, la commande docker tag
est le moyen standard de créer une nouvelle référence à cette image au sein d'un nom de flux différent.