reseau:docker:presentationdocker
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
reseau:docker:presentationdocker [2023/11/26 21:55] – [Les limites des conteneurs Docker] techer.charles_educ-valadon-limoges.fr | reseau:docker:presentationdocker [2024/12/08 20:07] (Version actuelle) – [Utilisation de Docker] techer.charles_educ-valadon-limoges.fr | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Cours : Présentation de Docker ====== | ====== Cours : Présentation de Docker ====== | ||
- | ===== La virtualisation complète d'un ordinateur | + | ===== Qu'est-ce que Docker ? ===== |
- | {{ : | + | Docker |
- | La virtualisation classique permet, via un hyperviseur, | + | |
- | L’hyperviseur | + | |
- | <WRAP center round info> | + | |
- | La virtualisation complète, la création d’une VM nécessite : | + | |
- | | + | |
- | * l' | + | |
- | Cependant l’application ou le service | + | Un conteneur est : |
- | </ | + | * une **unité logicielle** |
+ | * qui **encapsule** une application et ses dépendances, | ||
+ | * garantissant ainsi sa **portabilité** et son exécution cohérente **quel que soit l’environnement** (Windows, Lonux, MacOsX, etc.). | ||
- | ===== La virtualisation avec Docker===== | + | Docker |
- | {{ : | + | * le composant **cgroups** |
- | Les conteneurs Docker s' | + | |
- | Du fait que les conteneurs n' | + | |
- | Par ailleurs, la technologie mise en œuvre isole les applications | + | |
- | ===== A chaque service une VM dédiée ===== | + | Docker offre des outils pour utilise ces fonctionnalités |
- | Les pratiques courantes consistent à créer | + | * la **duplication** et la **suppression** des conteneurs ; |
+ | * l’**accessibilité** des conteneurs à travers la gestion des **API** et **CLI** ; | ||
+ | * la **migration** (à froid ou à chaud) de conteneurs. | ||
- | Mais cela représente une consommation importante de ressources disque et de calcul pour implémenter l’application ou le service. | + | Un conteneur Docker **se construit** à partir d’une **image**. |
- | ===== Docker | + | Une image Docker est un **package léger, autonome et exécutable** d’un logiciel qui inclut tout ce qui est nécessaire pour l’exécuter |
- | La technologie de conteneur mise en œuvre par Docker | + | * **code** de l’application, |
- | * Permettre la **création** de service s’exécutant sur un **système | + | |
- | * Partager une grande partie des **fonctionnalités** et des librairies de base du système | + | * **outils système |
- | * Assurer | + | |
- | * **Limiter** la consommation | + | De nombreuses images sont disponibles sur : |
+ | * le **registre officiel** (appelé hub): https:// | ||
+ | | ||
+ | Il est bien sûr possible de proposer des images, | ||
+ | |||
+ | |||
+ | ===== Comparaison de Docker avec une virtulisation classique ===== | ||
+ | Lien : https:// | ||
+ | |||
+ | ==== Utilisation d'un hyperviseur==== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | * virtualisation d'une ou plusieurs machines physiques, | ||
+ | | ||
+ | * hyperviseur responsable de tous les échanges de données. | ||
+ | L' | ||
+ | |||
+ | L’application ou le service qui sera configuré ne nécessite qu’**une partie des fonctionnalités de l’OS**. Par exemple | ||
+ | |||
+ | Le démarrage d’une machine virtuelle peut être plus ou moins long en fonction aussi de la technique utilisée (virtualisation complète ou paravirtualisation). | ||
+ | |||
+ | ==== Utilisation de Docker ==== | ||
+ | |||
+ | {{ :reseau: | ||
+ | |||
+ | Les conteneurs Docker s’exécutent sur une machine hôte : | ||
+ | * partagent le noyau du système d’exploitation de cette machine | ||
+ | * font directement appel à celui-ci pour exécuter les applications. Les conteneurs démarrent ainsi très rapidement et utilisent peu de ressources (processeur, mémoire | ||
+ | * très légers : n’embarquent pas de système d’exploitation et qu’ils peuvent partager des fichiers communs | ||
+ | * réduit l’utilisation du disque, | ||
+ | * migrent plus facilement d’une machine physique à une autre | ||
+ | * téléchargements d’images sont beaucoup plus rapides. | ||
+ | Par ailleurs, la technologie | ||
Docker permet des usages qu’il était difficilement envisageable auparavant. | Docker permet des usages qu’il était difficilement envisageable auparavant. | ||
Ligne 41: | Ligne 71: | ||
- | Docker n’est ni un émulateur ni une solution de virtualisation. C’est un **logiciel client-serveur** basé sur des fonctionnalités de bas niveau du noyau Linux et ou de Windows. Si la virtualisation classique consiste à simuler le fonctionnement d’une machine physique en isolant les applications dans des systèmes d’exploitation situés dans des VMs différentes. | + | Docker n’est ni un émulateur ni une solution de virtualisation. C’est un **logiciel client-serveur** basé sur des fonctionnalités de bas niveau du noyau Linux et ou de Windows. |
L’approche de Docker consiste : | L’approche de Docker consiste : | ||
- | * à assurer l' | + | * à assurer l'**isolation** entre application, |
- | * avec les fonctionnalités du système d’exploitation lui-même. | + | * avec les **fonctionnalités** du système d’exploitation lui-même. |
L' | L' | ||
reseau/docker/presentationdocker.1701032142.txt.gz · Dernière modification : 2023/11/26 21:55 de techer.charles_educ-valadon-limoges.fr