Maîtrise de Docker dans les prairies gélasiennes

DockerBeginner
Pratiquer maintenant

Introduction

Imaginez-vous dans les anciennes prairies de Gelasian, où les chevaux sauvages galopent en toute liberté et où le lien entre un dompteur et les bêtes indomptées est vital pour la survie. Votre rôle est celui d'un dompteur de chevaux sauvages, chargé de relever le défi d'utiliser Docker pour gérer efficacement des conteneurs dans ce vaste paysage.

Maîtrise de la création de conteneurs

Dans cette étape, vous apprendrez les bases de la création et de la gestion de conteneurs Docker pour survivre dans les prairies sauvages.

Tâches

  • Créez un conteneur Nginx nommé mynginx et assurez-vous qu'il fonctionne correctement.
  • Lancez un conteneur Alpine et vérifiez son état.
  • Déployez un conteneur Ubuntu avec un volume spécifique attaché (en montant le répertoire ~/project de l'hôte vers le répertoire /app du conteneur).

Exigences

  • Vous devez effectuer toutes les opérations dans le répertoire /home/labex/project.
  • Utilisez les commandes suivantes :
    • Pour créer des conteneurs : docker run
    • Pour vérifier l'état des conteneurs : docker ps
    • Pour attacher un volume : docker run -v

Exemple

Une fois les tâches terminées, la sortie de docker ps doit afficher les conteneurs en cours d'exécution, incluant des informations pertinentes telles que l'ID du conteneur, l'image et le statut.

labex:~/ $ docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES
1983f85f03d4   ubuntu    "sleep 3600"             22 seconds ago   Up 21 seconds             ubuntu_container
4231996cae33   alpine    "sleep 3600"             2 minutes ago    Up 2 minutes              alpine_container
519eadd3ced5   nginx     "/docker-entrypoint.…"   2 minutes ago    Up 2 minutes    80/tcp    mynginx

Mise en réseau et communication des conteneurs

Dans cette étape, vous plongerez dans le monde de la mise en réseau et de la communication entre conteneurs pour établir une connectivité transparente à travers les prairies.

Tâches

  • Créez un réseau personnalisé nommé mynetwork pour les conteneurs.
  • Déployez un conteneur Alpine nommé myalpine sur le réseau personnalisé et assurez-vous qu'il peut communiquer avec d'autres conteneurs nommés mypython basés sur l'image Python au sein du même réseau.

Exigences

  • Toutes les opérations doivent rester dans le répertoire /home/labex/project.
  • Utilisez les commandes suivantes :
    • Pour créer un réseau personnalisé : docker network create
    • Pour connecter des conteneurs à un réseau : docker network connect

Exemple

Une fois les tâches terminées, le réseau personnalisé doit être visible lors de l'exécution de docker network ls, et le conteneur Python doit réussir à communiquer avec les autres conteneurs du réseau.

Voir le réseau :

labex:~/ $ docker network ls
NETWORK ID     NAME        DRIVER    SCOPE
1a367e6cc4e5   bridge      bridge    local
91199fc6ad2e   host        host      local
32e2857073a9   minikube    bridge    local
92d3b71b7efd   mynetwork   bridge    local
1078d2c781b6   none        null      local

Voir la connexion des conteneurs via ping :

labex:~/ $ docker exec myalpine ping mypython
PING mypython (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.153 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.072 ms
64 bytes from 172.18.0.3: seq=2 ttl=64 time=0.069 ms

Résumé

Dans ce défi, vous avez endossé le rôle d'un dompteur de chevaux sauvages dans les anciennes prairies, maîtrisant l'art de la gestion des conteneurs Docker. En accomplissant les tâches et en comprenant les solutions, vous avez acquis des compétences essentielles en gestion et en mise en réseau de conteneurs Docker, indispensables pour survivre dans le monde indompté de Docker.

✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer