Découvrez notre fiche de triche exclusive sur Docker!

Découvrez notre fiche de triche sur Docker!

Introduction

Docker est une plateforme open-source qui simplifie le processus de création, de livraison et d’exécution d’applications à l’aide de conteneurs. Les conteneurs permettent aux développeurs de regrouper les applications et leurs dépendances, les rendant ainsi portables et cohérentes sur différents environnements. Cette fiche de triche Docker fournit un guide de référence rapide des commandes et concepts essentiels pour travailler efficacement avec Docker.

Qu’est-ce que Docker ?

Docker est une plateforme de conteneurisation qui permet aux développeurs de créer, déployer et gérer des applications dans des conteneurs isolés. Ces conteneurs regroupent le code de l’application, l’exécution, les bibliothèques et les dépendances, garantissant ainsi la cohérence et l’efficacité sur différents systèmes.

En savoir plus : Un guide complet sur Docker pour les débutants

Architecture Docker

Docker suit une architecture client-serveur :

  • Client Docker : L’outil en ligne de commande qui permet aux utilisateurs d’interagir avec le démon Docker.
  • Démon Docker : Le service en arrière-plan responsable de la construction, de l’exécution et de la gestion des conteneurs Docker.
  • Images Docker : Modèles en lecture seule utilisés pour créer des conteneurs.
  • Conteneurs Docker : Instances en cours d’exécution des images Docker.
  • Registre Docker : Un référentiel pour stocker et distribuer des images Docker.

Installation de Docker

Pour installer Docker sur votre système, suivez les instructions appropriées pour votre système d’exploitation. Voici les étapes pour Windows et MacOS.

Windows

Vérifier les exigences système

Windows 10 64 bits : éditions Pro, Entreprise ou Éducation

Virtualisation matérielle activée dans le BIOS/UEFI (Intel VT-x/AMD-V)

Télécharger Docker Desktop

Rendez-vous sur le site officiel de Docker et téléchargez l’installateur Docker Desktop pour Windows.

Installer Docker Desktop

Exécutez l’installateur que vous avez téléchargé et suivez l’assistant d’installation. Il vous guidera tout au long du processus.

Démarrer Docker

Une fois installé, Docker Desktop devrait se lancer automatiquement. Vous verrez l’icône Docker dans la barre système lorsqu’il est en cours d’exécution.

MacOS

Vérifier les exigences système

macOS Sierra 10.12 ou une version ultérieure

macOS doit être un modèle de 2010 ou plus récent, avec le support matériel d’Intel pour la virtualisation de l’unité de gestion de la mémoire (MMU).

Télécharger Docker Desktop pour Mac

Rendez-vous sur le site officiel de Docker et téléchargez l’installateur Docker Desktop pour macOS.

Installer Docker Desktop

Ouvrez le fichier .dmg téléchargé et faites glisser l’icône Docker dans le dossier Applications.

Démarrer Docker

Ouvrez Docker depuis le dossier Applications. Il apparaîtra dans la barre de menus, indiquant qu’il est en cours d’exécution.

Registre et Référentiel Docker

Le registre Docker est un service qui stocke et gère les images Docker. Il agit comme un référentiel central où les utilisateurs peuvent stocker, partager et extraire des images Docker. Docker Hub est un registre Docker public, tandis que des registres privés peuvent être configurés pour un stockage d’images interne sécurisé.

Un référentiel Docker est une collection d’images liées portant le même nom, différenciées par des balises représentant différentes versions ou configurations. Les utilisateurs peuvent pousser des images vers un référentiel dans un registre, et d’autres peuvent extraire ces images pour exécuter des conteneurs. Les registres et les référentiels sont essentiels pour simplifier la distribution d’images et faciliter le développement collaboratif dans l’écosystème Docker.

Voici les commandes de la fiche de triche Docker pour diverses fonctions-

Exécution de conteneurs

Pour exécuter un conteneur à partir d’une image, utilisez la commande suivante : docker run [options] IMAGE [commande]

Par exemple, pour exécuter un serveur web Nginx : docker run -d -p 80:80 nginx

Démarrer ou arrêter le conteneur

  1. Pour démarrer un conteneur arrêté, utilisez : docker start IDENTIFIANT_CONTENEUR
  2. Pour arrêter un conteneur en cours d’exécution, utilisez : docker stop IDENTIFIANT_CONTENEUR

Obtenir des informations sur le conteneur

  1. Pour lister tous les conteneurs en cours d’exécution, utilisez : docker ps
  2. Pour afficher tous les conteneurs (y compris ceux arrêtés), utilisez : docker ps -a

Gestion des images

  1. Pour extraire une image d’un registre, utilisez : docker pull IMAGE_NAME[:TAG]
  2. Pour construire une image à partir d’un Dockerfile, accédez au répertoire du Dockerfile et utilisez : docker build -t IMAGE_NAME[:TAG].

Réseau

  1. Pour créer un réseau de pont défini par l’utilisateur, utilisez : docker network create NETWORK_NAME
  2. Pour connecter un conteneur à un réseau, utilisez : docker network connect NETWORK_NAME CONTAINER_NAME

Nettoyage de Docker

  1. Pour supprimer un conteneur arrêté, utilisez : docker rm CONTAINER_ID
  2. Pour supprimer une image, utilisez : docker rmi IMAGE_NAME
  3. Pour nettoyer les ressources inutilisées (conteneurs, réseaux, images et volumes), utilisez : docker system prune

Orchestration

Docker Compose est un outil permettant de définir et de gérer des applications Docker multi-conteneurs. Il configure les services, les réseaux et les volumes de l’application à l’aide d’un fichier YAML. Avec Docker Compose, vous pouvez facilement déployer des environnements et des applications complexes. Voici les commandes pour la feuille de triche Docker Compose –

  1. Pour créer et démarrer tous les conteneurs définis dans le fichier docker-compose.yml, utilisez : docker-compose up
  2. Pour créer et démarrer les conteneurs en mode détaché, utilisez : docker-compose up -d
  3. Pour arrêter et supprimer tous les conteneurs, réseaux et volumes créés par docker-compose up, utilisez : docker-compose down
  4. Pour lister tous les conteneurs en cours d’exécution définis dans le fichier docker-compose.yml, utilisez : docker-compose ps
  5. Pour afficher les journaux d’un service spécifique, utilisez : docker-compose logs [service_name]
  6. Pour construire ou reconstruire les images définies dans le fichier docker-compose.yml, utilisez : docker-compose build
  7. Pour exécuter une commande à l’intérieur d’un conteneur de service spécifique, utilisez : docker-compose exec [service_name] [command]

Services

Les services en mode Docker Swarm définissent les tâches sur un cluster. Ils vous permettent de répartir l’application sur plusieurs nœuds et garantissent une haute disponibilité. Voici les commandes pour cela :

  1. Pour initialiser un Docker Swarm sur le nœud actuel, utilisez : docker swarm init
  2. Pour rejoindre un Docker Swarm en tant que nœud de travail, utilisez : docker swarm join
  3. Pour lister les nœuds du Docker Swarm, utilisez : docker node ls
  4. Pour créer un nouveau service, utilisez : docker service create
  5. Pour lister tous les services en cours d’exécution dans le Swarm, utilisez : docker service ls
  6. Pour lister les tâches (conteneurs) d’un service, utilisez : docker service ps [service_name]
  7. Pour mettre à l’échelle un service à N répliques, utilisez : docker service scale [service_name]=N
  8. Pour mettre à jour un service (par exemple, modifier les répliques, la version de l’image), utilisez : docker service update
  9. Pour supprimer un service du Swarm, utilisez : docker service rm [service_name]
  10. Pour mettre un nœud en mode “drain”, ce qui signifie qu’il ne recevra pas de nouvelles tâches, utilisez : docker node update –availability drain [node_name]

Interaction avec un conteneur

Pour exécuter des commandes à l’intérieur d’un conteneur en cours d’exécution, utilisez : docker exec [options] CONTAINER_ID COMMAND [ARG…]

Par exemple, pour accéder à l’interpréteur de commandes d’un conteneur en cours d’exécution : docker exec -it CONTAINER_ID sh

Termes importants

  • Image : Un paquet logiciel léger, autonome et exécutable qui inclut tout ce qui est nécessaire pour exécuter un logiciel, y compris le code, l’environnement d’exécution, les bibliothèques et les dépendances.
  • Conteneur : Une instance d’une image Docker qui peut être exécutée, démarrée, arrêtée et supprimée.
  • Dockerfile : Un fichier texte contenant des instructions pour construire une image Docker.
  • Registre : Un système de stockage et de distribution de contenu pour les images Docker nommées.
  • Dépôt : Une collection d’images Docker ayant le même nom, distinguées par des balises.
  • Docker Compose : Un outil pour définir et gérer des applications Docker multi-conteneurs.
  • Docker Swarm : Une solution de regroupement et d’orchestration native pour Docker.

Conclusion

En conclusion, Docker est une plateforme de conteneurisation essentielle qui simplifie le processus de construction, d’expédition et d’exécution d’applications en les encapsulant et en isolant leurs dépendances dans des conteneurs. Grâce à cette feuille de triche complète, les utilisateurs peuvent exploiter efficacement la puissance de Docker, rationaliser le déploiement des applications et maintenir une cohérence dans des environnements diversifiés.

We will continue to update IPGirl; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AI

Des chercheurs de NYU et de Meta présentent Dobb-E un cadre général et open-source pour l'apprentissage de la manipulation robotique domestique.

L’équipe de chercheurs de NYU et Meta a cherché à relever le défi de l’apprentissage de la manipulation r...

AI

T5 Transformateurs de texte à texte (Partie Deux)

La proposition de BERT [5] a conduit à la popularisation des approches d'apprentissage par transfert pour le traiteme...

AI

Les chercheurs en informatique créent des robots modulaires et flexibles.

Des blocs robotiques flexibles développés par des informaticiens du Dartmouth College, de l'Université Rutgers et de ...

Science des données

L'IA dévore la science des données.

Quand tout est dit et fait, et que l'IA a été universellement reconnue comme nos seigneurs légitimes, l'idée de la sc...