0% ont trouvé ce document utile (0 vote)
20 vues8 pages

TP02 Docker Zbakh

Transféré par

mavola7688
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
20 vues8 pages

TP02 Docker Zbakh

Transféré par

mavola7688
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP 2 : Containers Docker

Filières SSI et BI&A


Pr M. Zbakh
2024 - 2025

Objectifs :
1 Introduction
1.1 Qu’est-ce que Docker ?
1.2 Pourquoi utiliser des conteneurs ?
1.3 Avantages des conteneurs ?

2 Installation et configuration de Docker


2.1 Installation de Docker
2.2 Premier Container
2.3 Gestion des containers
3 Conclusion

1. Introduction :

Docker est un service de gestion de conteneurs. Son idée générale est de permettre aux
développeurs de développer facilement des applications, de les expédier dans des conteneurs
qui peuvent ensuite être déployés n’importe où.

La version initiale de Docker a été lancée en mars 2013 et, depuis, elle est devenue le mot à la
mode pour le développement du monde moderne, en particulier face aux projets basés sur la
méthode Agile.

1.1 Qu’est-ce que Docker ?

Virtualisation, Cloud & HPC Pr. Zbakh 1


FIGURE 1.1 – Docker

Docker est une plateforme de conteneurisation open source. Docker permet aux développeurs
d’empaqueter des applications dans des conteneurs - des composants exécutables standardisés
qui combinent le code source de l’application avec toutes les bibliothèques du système
d’exploitation (SE) et les dépendances nécessaires pour exécuter le code dans n’importe quel
environnement.

Bien que les développeurs puissent créer des conteneurs sans Docker, ce dernier facilite et
sécurise la construction, le déploiement et la gestion des conteneurs.

Il s’agit essentiellement d’une boîte à outils qui permet aux développeurs de créer, déployer,
exécuter, mettre à jour et arrêter des conteneurs à l’aide de commandes simples et d’une
automatisation permettant de gagner du temps.

1.2 Pourquoi l’intérêt d’utiliser des conteneurs ?

FIGURE 1.2 – Container

Les conteneurs sont rendus possibles par l’isolation et la virtualisation des processus du
système d’exploitation (SE), qui permettent à plusieurs composants applicatifs de partager les

Virtualisation, Cloud & HPC Pr. Zbakh 2


ressources d’une seule instance d’un noyau de SE, de la même manière que la virtualisation
des machines permet à plusieurs machines virtuelles (VM) de partager les ressources d’un seul
serveur matériel.

1.3 Avantages des conteneurs ?

Les conteneurs sont rendus possibles par l’isolation et la virtualisation des processus du
système d’exploitation (SE), qui permettent à plusieurs composants applicatifs de partager les
ressources d’une seule instance d’un noyau de SE, de la même manière que la virtualisation
des machines permet à plusieurs machines virtuelles (VM) de partager les ressources d’un seul
serveur matériel.

Un poids plus léger : Contrairement aux machines virtuelles, les conteneurs ne transportent
pas la charge utile d’une instance entière de système d’exploitation.
Ils ne comprennent que les processus et les dépendances du système d’exploitation nécessaires
à l’exécution du code.

Plus grande efficacité des ressources : Avec les conteneurs, vous pouvez exécuter plusieurs
fois plus de copies d’une application sur le même matériel qu’avec les VM. Vous pouvez ainsi
réduire vos dépenses en matière de cloud computing.

Amélioration de la productivité des développeurs : Par rapport aux VM, les conteneurs
sont plus rapides et plus faciles à déployer, à approvisionner et à redémarrer. Ils sont donc
idéaux pour les pipelines d’intégration et de livraison continues (CI/CD) et conviennent mieux
aux équipes de développement qui adoptent les pratiques Agile et DevOps.

2. Installation et configuration de Docker

2.1 Installation de Docker :

On ouvre le terminale puis on tape la commande :

$ apt−get update

Cette commande se connectera à Internet pour installer, supprimer et mettre à jour les
paquets (logiciels) déjà installés ou bien encore faire la mise à jour de votre système.

Vous avez besoin des droits du compte root pour utiliser cette commande, soit en vous
logguez sur le compte root où en utilisant la commande « sudo apt-get update » si vous
n’êtes pas connectés en tant que root.

Virtualisation, Cloud & HPC Pr. Zbakh 3


FIGURE 2.1 – apt-get update

Puis la commande :
$ sudo apt update

Puis la commande :
$ sudo apt install −y [Link]

Virtualisation, Cloud & HPC Pr. Zbakh 4


Il faut « enable » docker pour demander au système systemd de le lancer
automatiquement au démarrage par la commande :

$ sudo systemctl enable docke r −−now

$ docker

Maintenant on installe les certificats nécessaires qui vont nous permettre de travailler avec
Docker.

Virtualisation, Cloud & HPC Pr. Zbakh 5


On modifie le fichier : ”/etc/apt/[Link].d/[Link]” en ajoutant :
deb [Link] main.

$printf ”%s\n ” ” deb [ a r c h =amd64 ] [Link] sudo tee


/etc/apt/[Link].d/[Link]

Ensuite on ajoute Docker GPG key via la commande :

$ curl -fsSL [Link] | sudo apt-key add -

2.2 Premiers Containers :

Vérifiez que Docker est bien installé en faisant l'équivalent d'un hello-world que l'on fait en
apprenant tout nouveau language de programmation : sudo docker run hello-world.
Docker liste les containers locaux (vous le ferez vous-même sous peu), découvre qu'il n'a pas
le container hello-world et va le télécharger depuis le dépôt par défaut (le hub docker). Il va
ensuite démarrer le container et l'exécuter. Vous devriez donc obtenir globalement quelque
chose d'équivalent à :

Vérifiez que l'image hello-world est correctement installée en tapant docker images. Quand
est-ce que l'image a été créée ?

Virtualisation, Cloud & HPC Pr. Zbakh 6


Démarrons notre premier containers ubuntu. docker run ubuntu. Que se passe-t-il ?

FIGURE 2.3 – Docker run

Un container ne reste en vie que si un processus est actif. On peut lister les containers actifs
avec la commande docker ps. On peut aussi lister tous les containers, actifs ou inactifs avec
docker ps -a. Que vous retourne ces commandes et pourquoi ?

FIGURE 2.4 – a - Il indique à la commande docker ps de lister tous les conteneurs


du système.
Nous allons maintenant rediriger l'entrée standard du container avec l’option -i et ouvrir un
pseudo-terminal avec -t, le tout en exécutant le processus /bin/bash :
docker run -ti --name=ubuntu ubuntu /bin/bash

FIGURE 2.5 – docker ps –a


Quelle est la version d'ubuntu du container (tapez lsb release -a) ?

Virtualisation, Cloud & HPC Pr. Zbakh 7


2.3 Gestion des containers
Placez-vous dans votre second terminal puis listez les processus avec ps :

FIGURE 2.6 – Afficher les processus actifs avec ps

Puis avec list :

FIGURE 2.7 – Afficher les processus actifs avec list

Puis listez les processus avec top :

Virtualisation, Cloud & HPC Pr. Zbakh 8

Vous aimerez peut-être aussi