1/46
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
A quoi sert docker ?
permet de packager une application avec ses dépendances dans une unité standardisée, déployable sur n’importe quel environnement
Qui a créé docker ?
Solomon Hykes
En quel langage est codé docker ?
Go
Image vs Container: quelle est l’analogie en POO ?
image = classe (modèle en lecture seule) et container = instance (objet en exécution)
Différence principale entre une VM et un container ?
une VM embarque un OS invité complet et hyperviseur. Le container partage le kernel du host via docker engine, plus léger et rapide
Qu’est-ce que le docker hub ?
un registre publicpour push et pull des images docker
Quels sont les 3 composants de l’architecture docker ?
clien (CLI), docker host (daemon + container + images), registry (dépôts d’images)
Qu’est-ce que la stratégie copy-on-write ?
les images sont en lecture seule. quand un container modifie un fichier, docker crée une copie inscriptible dans le layer du container uniquement
Comment lister les images locales ?
docker image ls
Comment télécharger une image ?
docker image pull busybox / docker image pull couchdb:2.1
Qu’est-ce que l’image ID ?
le sha256 du contenu de l’image - garantit unicité et intégrité
Comment supprimer une image
docker image rm busybox
Comment supprimer toutes les images inutilisées ?
docker image prune
Comment créer une image depuis un container modifié ?
docker container commit node_ctn mynodejs
Pourquoi les images layers sont importants ?
Ils sont partagés entre images et mis en cache lors de builds et permettent des reconstructions plus rapides
Comment lancer un container busybox interactif ?
docker container urn -it busybox
Que fait —rm ?
Le container est automatiquement supprimé à l’arrêt
Que fait -d ?
Lance le container en mode détaché (arrière plan)
Comment lister les containers actifs ?
docker container ls
Comment lister tous les containers ?
docker container ls -a
Comment exécuter une commande dans un container en cours ?
docker exec -it nom_container bash
Comment arrêter proprement un container ?
docker container stop nom (SIGTERM)
Comment tuer un container ?
docker container kill nom (SIGKILL)
Comment exposer le port 8080 du container sur le port 80 du host ?
docker container run -p 80:8080 image
Comment créer un volume nommé ?
docker volume create couchdb_vol
Différence -v et —mount ?
-v crée le repertoire automatiquement si absent. —mount est plus explicite et retourne une erreur si la source n’existe pas
Supprimer un container et ses volumes ?
docker container rm -v nom_container
Réutiliser les volumes d’un autre container ?
docker container run —volumes-from=couchdb1 busybox
A quoi sert from dans un dockefile ?
définit l’image de base du buil. première instruction obligatoire
Quelle est la différence entre arg et env dans un dockefile ?
arg est disponible uniquement au build et env est disponible au build et à l’exécution (override avec -e)
A quoi sert label dans un dockefile ?
ajoute des métadonnées clé=valeur à l’image, lisibles avec docker inspect
Quelle est la différence entre copy et add dans un dockefile ?
copy est pour les fichiers locaux uniquement et add pour les fichiers locaux + URLs distantes + décompresse les .tar automatiquement
A quoi sert run et sa bonne pratique dans un dockefile ?
exécute une commande au build, crée un layer. bonne pratique: chaîner avec && pour réduire le nombre de layers
A quoi sert volume dans un dockefile ?
déclare un point de montage créé automatiquement à l’instanciation du container
A quoi sert expose dans un dockefile ?
Documente le port d’écoute. N’effectue pas de forwarding
A quoi sert workdir dans un dockefile ?
définit le répertoire courant pour les instructions suivantes : run, cmd, entrypoint, copy, add
A quoi sert user dans un dockefile ?
définit le UID/GID sous lequel run, cmd, entrypoint s’exécutent
Différence entre entrypoint et cmd dans un dockefile ?
entrypoint exécutable principal (non ignorable sans —entrypoint), cmd arguments par défaut, remplaçables à l’exécution
Comment builder une image avec un tag dans un dockefile ?
docker image build -t mon_image:1.0
Comment désactiver le cache lors du build dans un dockefile ?
docker build —no-cache=true
cycle de vie d’une instruction dockerfile ?
run d’un container intermédiaire → exécution de l’instruction (copy-on-write) → commit en image transitoire → rm du container intermédiaire
Quels sont les 3 réseaux docker pré-définis ?
none, host, bridge
Que fait le réseau none ?
Container totalement isolé, auxune interface réseau
Que fait le réseau host ?
Le container partage directement l’interface réseau physique du host. Port 80 container = port 80 host
Un container peut-il appartenir à plusieurs réseaux ?
Oui via docker network connect. Il obtient une interface virtuelle par réseau
A quoi sert docker compose ?
orchestre plusieurs containers via un fichier yaml. Un seul docker-compose up remplace toutes les commandes docker un
A quoi sert depends_on
définit l’ordre de démarrage des services