Gestion des images

Section INF (All)

Les objectifs

Expliquer les interactions entre le client et le registre

Construire une image à partir d’un dockerfile fourni

Gérer les versions d’une image

Opérations sur images

docker pull

docker run

docker build

docker push

docker tag

docker pull

docker build

docker run

docker push

Les instructions du build

Syntaxe minimale

docker build .

C’est quoi ce . ?

Le démon Docker reçoit les fichiers du build. C’est ce que l’on appelle un contexte.

Le . signifie dossier courant.

On peut aussi passer un autre dossier :

docker build ./src

Les images orphelines

dangling images

Les images orphelines apparaissent quand :

  • On construit sans tag (docker build .)

  • Ou lorsqu’un build remplace un tag existant (cache).

Elles peuvent être retaggées ou supprimées.

docker image tag <IMAGE_ID> <REPOSITORY>:<TAG>

# Par exemple :
docker image tag abce43 toolbox:1.0

Tag

Un tag complet est composé d’un repository et d’un tag (version).

Construire et tagger une image

docker build -t monimage .

Sans spécifier une version, le tag devient le latest.

Version

docker build -t monimage:1.0 .

Pousser (push) une image

Registre privé et public sur hub.docker.com

Une URI d’un dépôt ressemble à :

Nom du compte/REPOSITORY:TAG

Exemple : teacheretml/toolbox:1.0

On commence par quoi ?

Les opérations

Préparer les tag

On tagge nos versions en prefixant le nom du compte


docker tag <REPOSITORY>:<VERSION> <NOM_COMPTE>/<REPOSITORY>:<VERSION>
docker tag toolbox:1.0 teacheretml/toolbox:1.0

(docker tag est un alias de docker image tag)

Pousser l’image


docker push <NOM_COMPTE>/<REPOSITORY>:<VERSION>
docker push teacheretml/toolbox:1.0

⚠️ docker login impératif