Résumé

Dans cet article, nous avons couvert une introduction aux conteneurs Docker et expliqué le concept de conteneurisation à travers une illustration des concepts et un exemple pratique. nous avons également abordé la configuration, la création et l'exécution de conteneurs Docker et expliqué le concept d'exécution de plusieurs conteneurs Docker ensemble via Docker-compose.

Cet article couvre les réponses pour Introduction à Docker et Introduction à la conteneurisation salle dans TryHackMe.

Qu'est-ce que la conteneurisation

En termes informatiques, la conteneurisation est le processus de regroupement d'une application et des ressources nécessaires (telles que des bibliothèques et des packages) dans un seul package appelé conteneur. Le processus de regroupement des applications rend les applications considérablement portables et faciles à exécuter.

Les applications modernes sont souvent complexes et dépendent généralement de frameworks et de bibliothèques installés sur un appareil avant que l'application puisse s'exécuter. Ces dépendances peuvent :

  • Être difficile à installer en fonction de l'environnement dans lequel l'application est exécutée (certains systèmes d'exploitation peuvent même ne pas les prendre en charge !)
  • Cela crée des difficultés pour les développeurs à diagnostiquer et à reproduire les erreurs, car il pourrait s'agir d'un problème avec l'environnement de l'application – et non avec l'application elle-même !
  • Peut souvent entrer en conflit les uns avec les autres. Par exemple, disposer de plusieurs versions de Python pour exécuter différentes applications est un casse-tête pour l'utilisateur, et une application peut fonctionner avec une version de Python et pas une autre.

Obtenir les notes du certificat OSCP

Que sont les conteneurs Docker ?

Docker est une plate-forme de conteneurisation relativement simple, étendue et open source. L'écosystème Docker permet aux applications (images – nous y reviendrons dans une prochaine salle) d'être déployées, gérées et partagées en toute simplicité.

Travaille sur Linux, Windows et MacOS, Docker est un choix judicieux pour exécuter des applications. Les applications peuvent être publiées sous forme d’« images » et partagées avec d’autres. Il suffit d'extraire (télécharger) l'image et de l'exécuter avec Docker.

Docker utilise la même technologie que celle utilisée dans la conteneurisation pour isoler les applications dans des conteneurs appelés Docker Engine. Le Docker Engine est essentiellement une API qui s'exécute sur le système d'exploitation hôte, qui communique entre le système d'exploitation et les conteneurs pour accéder au matériel du système (tel que le processeur, la RAM, le réseau et le disque).

Pour cette raison, le moteur Docker est complet et vous permet de faire des choses comme :

  1. Connecter des conteneurs ensemble (par exemple, un conteneur exécutant une application Web et un autre conteneur exécutant une base de données)
  2. Applications d’exportation et d’importation (images)
  3. Transférer des fichiers entre le système d'exploitation et le conteneur

Docker utilise la syntaxe de programmation YAML pour permettre aux développeurs d'indiquer comment un conteneur doit être construit et ce qui est exécuté. C'est une raison importante pour laquelle Docker est si portable et facile à déboguer ; partagez les instructions, et il les construira et les exécutera sur tout appareil prenant en charge le moteur Docker.

Réponses aux défis

Quel est le nom de la fonctionnalité du noyau qui permet aux processus d'utiliser les ressources du système d'exploitation sans pouvoir interagir avec d'autres processus ?
Dans un normale configuration, d’autres conteneurs peuvent-ils interagir les uns avec les autres ? (oui/non)
Que devient une application lorsqu’elle est publiée via Docker ? Format : Un xxxxx (remplissez les x)

Quelle est l’abréviation du langage de syntaxe de programmation utilisé par Docker ?

En quelle année Docker a-t-il été créé ?

Où Docker a-t-il été présenté pour la première fois ?

Quelle version d'Unix a eu les premiers concepts de conteneurisation ?

Quelle commande pouvons-nous utiliser pour afficher une liste des processus en cours d’exécution ?
Conteneurisez les applications dans le site statique. Qu'est-ce que le drapeau ?
Si nous voulions tirer une image docker, à quoi ressemblerait notre commande ?

Si nous voulions lister toutes les images sur un appareil exécutant Docker, à quoi ressemblerait notre commande ?

Disons que nous voulions extraire l'image « tryhackme » (sans guillemets) ; à quoi ressemblerait notre commandement ?

Disons que nous voulions extraire l'image « tryhackme » avec la balise « 1337 » (sans guillemets). À quoi ressemblerait notre commandement ?

À quoi ressemblerait notre commande si nous voulions exécuter un conteneur de manière interactive?

Remarque : Supposons que nous ne spécifions aucune image ici.

À quoi ressemblerait notre commande si nous voulions exécuter un conteneur dans «détachémode « ?

Remarque : Supposons que nous ne spécifions aucune image ici.

Disons que nous voulons exécuter un conteneur qui fonctionnera et lier un serveur Web sur le port 80. À quoi ressemblerait notre commande ?

Note: Supposons que nous ne spécifions aucune image ici.

Comment pourrions-nous énumérer tous en cours d'exécution des conteneurs ?

Maintenant, comment pourrions-nous énumérer tous conteneurs (y compris arrêtés) ?

Quelle instruction utiliserions-nous pour spécifier quelle image de base le conteneur doit utiliser ?
Quelle instruction utiliserions-nous pour dire au conteneur d’exécuter une commande ?

Quelle commande Docker utiliserions-nous pour créer une image à l’aide d’un Dockerfile ?

Disons que nous voulons nommer cette image ; quel argument utiliserions-nous ?

je veux utiliser docker-composer  à démarrer une série de conteneurs. Quel argument me permet de faire cela ?

je veux utiliser docker-composer  à supprimer la série de conteneurs. Quel argument me permet de faire cela ?

Quel est le nom du fichier .yml qui docker-composer les usages?

Note: pour cette question, vous devrez inclure le .yml extension de fichier dans votre réponse

Que signifie le terme « IPC » ?
À quelle technologie le Docker Server peut-il être égalé ?
Connectez-vous à la machine. Quel est le nom du conteneur en cours d'exécution ?

Utilisez Docker pour démarrer un serveur Web avec l'image « webserver » (sans guillemets). Tu devras exécuter le conteneur avec le port 80.

Après avoir démarré le conteneur, essayez de vous connecter à https://LAB_WEB_URL.p.thmlabs.com/ dans votre navigateur. Qu'est-ce que le drapeau ?

Vidéo pas à pas

A propos de l'Auteur

Je crée des notes de cybersécurité, des notes de marketing numérique et des cours en ligne. Je fournis également des conseils en marketing numérique, y compris, mais sans s'y limiter, le référencement, les publicités Google et Meta et l'administration CRM.

Voir les Articles