Aller au contenu
Apprendre.
  • M1 · toutes les matières15 matières : Préparation de données, API & sécurité, CI/CD, Docker, Merise, Dataviz, KNIME, ML appliqué : projet LoL, SQL & UML, SQL avancé, Machine Learning, Git, IA frugale & responsable, Qualité des données, MathématiquesAnnée
  • M2 · toutes les matières4 matières : Deep Learning, AI Act, Comex & Fundraising, Gouvernance & DataMeshAnnée
  • Deep LearningM2 · 4 modules · Réseaux de neurones, CNN, texte, modèles génératifs.Matière
  • Préparation de donnéesM1 · 3 modules · Nettoyer, transformer et fusionner des données avec Python.Matière
  • API & sécuritéM1 · 2 modules · Consommer, concevoir et sécuriser des API.Matière
  • CI/CDM1 · 1 module · Intégration et livraison continues.Matière
  • DockerM1 · 3 modules · Conteneurs, images, volumes, réseaux, Compose.Matière
  • MeriseM1 · 2 modules · Modéliser une base : MCD, MLD, MPD.Matière
  • DatavizM1 · 2 modules · Visualiser pour comprendre et décider.Matière
  • KNIMEM1 · 1 module · Explorer et nettoyer des données en workflow.Matière
  • ML appliqué : projet LoLM1 · 2 modules · Du besoin métier au POC de vision par ordinateur.Matière
  • SQL & UMLM1 · 3 modules · Modèles UML et requêtes SQL.Matière
  • SQL avancéM1 · 3 modules · Jointures, fenêtres, CTE, optimisation.Matière
  • Machine LearningM1 · 3 modules · Régression, classification, segmentation, projet.Matière

↑↓ naviguer↵ ouvre le résultat en surbrillanceesc fermer

Partie 2 · Images

Nommer et gérer les images

Une image est caractérisée par un registry, un repository et un tag. La confusion arrive vite : détaillons.

  • Registry : service web qui contient les images et les sert via une API REST. Par défaut, Docker Hub ; s'il est omis, c'est lui qui est utilisé.
  • Repository : ensemble d'images similaires, avec des tags différents (par abus « le nom de l'image »). Exemples : php, mysql, python.
  • Tag : variante dans un repository. Pour php : 7.3-apache, 7.3-fpm, latest. Tag par défaut : latest.

Attention : plusieurs tags peuvent pointer vers la même image (php:latest = php:7.3).

docker tag 0e5574283393 monregistry:5000/monimage:v1

Lecture : 0e5574283393 est l'identifiant local de l'image ; monregistry:5000 l'adresse du registry ; monimage le repository ; v1 le tag.

docker tag 0e5574283393 monimage
docker tag 0e5574283393 nomutilisateur/monimage

La 1re ligne prend toutes les valeurs par défaut (registry Docker Hub, tag latest), mais on ne pourrait pas la pousser sur Docker Hub : le registry officiel exige de préfixer le repository par le nom d'utilisateur (2e ligne). Seules les images officielles n'ont pas de préfixe.

Vérifie que tu as compris

Dans monregistry:5000/monimage:v1, que vaut le tag ?

Manipuler les images

CommandeEffet
docker search <terme>cherche dans le registry, résultats triés par étoiles sur Docker Hub
docker pull <nom>télécharge une image ; on créera ensuite un conteneur avec docker run
docker imagesliste les images locales ; la taille = somme des couches
docker history <image>étapes de création ; <missing> = conteneur intermédiaire absent de la machine
docker rmi <image>supprime une image locale
docker diff <conteneur>différences entre un conteneur et son image
docker commit <conteneur>crée une image à partir d'un conteneur modifié

diff + commit permettent la construction manuelle d'images, laborieuse et « généralement pas une pratique recommandée » : on lui préfère le Dockerfile.

Vérifie que tu as compris

Quelle commande crée une nouvelle image à partir d'un conteneur modifié ?