Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | Dernière révision Les deux révisions suivantes | ||
reseau:docker:presentationdocker [2023/11/26 21:50] techer.charles_educ-valadon-limoges.fr |
reseau:docker:presentationdocker [2023/11/26 21:54] techer.charles_educ-valadon-limoges.fr |
||
---|---|---|---|
Ligne 18: | Ligne 18: | ||
Par ailleurs, la technologie mise en œuvre isole les applications les unes des autres et de l' | Par ailleurs, la technologie mise en œuvre isole les applications les unes des autres et de l' | ||
+ | ===== A chaque service une VM dédiée ===== | ||
+ | Les pratiques courantes consistent à créer de nouvelles VM par duplication d’une image contenant un OS personnalisé et à assurer une **isolation forte** entre les VMs. Dans ce cas de figure on virtualise des systèmes d’exploitation identiques sur un même hôte physique. | ||
+ | Mais cela représente une consommation importante de ressources disque et de calcul pour implémenter l’application ou le service. | ||
- | Les pratiques courantes consistent également à créer de nouvelles VM par duplication d’une image contenant un OS personnalisé et à assurer une isolation forte entre les VMs. Dans ce cas de figure on virtualise des systèmes d’exploitation identiques sur un même hôte physique. Mais cela représente une consommation importante de ressources disque et de calcul | + | ===== Docker |
La technologie de conteneur mise en œuvre par Docker | La technologie de conteneur mise en œuvre par Docker | ||
* Permettre la **création** de service s’exécutant sur un **système d’exploitation identique**, | * Permettre la **création** de service s’exécutant sur un **système d’exploitation identique**, | ||
* Partager une grande partie des **fonctionnalités** et des librairies de base du système d’exploitation, | * Partager une grande partie des **fonctionnalités** et des librairies de base du système d’exploitation, | ||
- | * Assurer une **isolation** | + | * Assurer une **isolation** entre les VMs. |
* **Limiter** la consommation de ressources : espace disque, mémoire, temps de mise en œuvre très réduit , administration et maintenance lors des mises à jour notamment. | * **Limiter** la consommation de ressources : espace disque, mémoire, temps de mise en œuvre très réduit , administration et maintenance lors des mises à jour notamment. | ||
Ligne 37: | Ligne 39: | ||
C’est le principe des **micro-services** en facilitant la création de conteneurs Docker pour chaque service ou applications à provisionner selon les besoins. | C’est le principe des **micro-services** en facilitant la création de conteneurs Docker pour chaque service ou applications à provisionner selon les besoins. | ||
+ | |||
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. 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. | ||
Ligne 55: | Ligne 58: | ||
Le **montage de volume** permet la **persistance des données** des conteneurs. | Le **montage de volume** permet la **persistance des données** des conteneurs. | ||
</ | </ | ||
+ | |||
+ | ===== Les limites des conteneurs Docker ===== | ||
+ | |||
+ | Les conteneurs Docker souffrent tout de même de quelques limites : | ||
+ | * **isolement relatif avec le système d’exploitation hôte**, les conteneurs peuvent être plus vulnérables, | ||
+ | * **attribution moins fine et stricte des ressources système et multiplication facile des conteneurs**, | ||
+ | * **très forte dépendance entre les conteneurs et le système hôte** qui fait qu’un conteneur Linux ne peut être exploité nativement que sur Linux (idem avec un conteneur Windows qui ne peut être exécuté que sur Windows) même si les choses commencent à évoluer. | ||
+ | |||
+ | ===== Comment fonctionne Docker ===== | ||
Docker se compose : | Docker se compose : | ||
+ | |||
* d’un client, | * d’un client, | ||
* d’une API, | * d’une API, |