Une image Docker est une représentation figée d’une application, contenant tout ce dont elle a besoin pour s’exécuter : code, dépendances, bibliothèques, fichiers de configuration, etc. Elle sert de modèle pour créer des conteneurs Docker. Structure du Dockerfile# Le Dockerfile est un fichier qui décrit la logique de déploiement d'une application. On y spécifie l'environnement Mot Clé Description FROM L'instruction FROM permet d'indiquer l'image Docker de base à partir de laquelle WORKDIR L'instruction WORKDIR permet d'indiquer le répertoire de l'application. COPY L'instruction COPY permet de copier des éléments dans le conteneurs. ADD L'instruction ADD est similaire à COPY mais peut également copier des éléments externes depuis des URLs. FROM L'instruction FROM permet d'indiquer l'image Docker de base à partir de laquelle WORKDIR L'instruction WORKDIR permet d'indiquer le répertoire de l'application. COPY L'instruction COPY permet de copier des éléments dans le conteneurs. ADD L'instruction ADD est similaire à COPY mais peut également copier des éléments externes depuis des URLs. RUN L'instruction RUN permet d'exécuter des instructions dans le conteneur, installer des dépendances par exemple. EXPOSE L'instruction EXPOSE permet d'indiquer les ports à ouvrir dans le conteneur. CMD L'instruction CMD permet d'indiquer la commande à utiliser pour démarrer l'application. Exemple Dockerfile for Flask ApplicationFROM python:3.7-buster ADD . /app WORKDIR /app RUN pip install --upgrade pip \ && pip install -r requirements.txt EXPOSE 5000 CMD ["python", "app.py"] Construire une image# Une fois le Dockerfile prêt, il faut créer l'image Docker docker build -f Dockerfile -t <nom de l’image> . Afficher la liste des images# docker images [Output]PS C:\Users\Administrateur> docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest 9c7a54a9a43c 5 weeks ago 13.3kB iflaskapp v1 89e2ade90aae 3 months ago 924MB myflaskapp latest 163359a9e1d3 3 months ago 941MB alpine/git latest 22d84a66cda4 6 months ago 43.6MB PS C:\Users\Administrateur> Supprimer une image# docker rmi <nom de l’image> Dans la prochaine section, vous découvrirez comment lancer deployer des instances de vos applications grâce aux contenuers Docker.