D'après ce que je comprends de Docker, c'est un outil utilisé pour les environnements virtuels. Dans leur jargon, on appelle cela la "conteneurisation". C'est plus ou moins ce que fait le virtualenv de Python. Cependant, vous pouvez utiliser virtualenv sur Docker. Alors, est-ce un environnement virtuel à l'intérieur d'un environnement virtuel ? Je ne comprends pas comment cela peut fonctionner, alors quelqu'un pourrait-il m'éclairer ?
En outre, il existe images sans distorsion pour "plusieurs langages de programmation populaires" (y compris Python) provenant de Google qui "ne contiennent que le moteur d'exécution du langage de programmation". ArchWiki/Docker
44 votes
C'est une bonne question, mais elle sera probablement classée comme hors sujet. virtualenv n'est pas une véritable isolation, c'est une isolation du pauvre en utilisant des pirates de chemins et des liens symboliques - vous êtes toujours dans votre propre système d'exploitation. Docker fournit plus d'isolation, mais pas autant qu'une machine virtuelle à part entière. On peut considérer un conteneur comme un moyen terme entre une boîte virtuelle (lourde, coûteuse) et un virtualenv (léger, bon marché). La création d'un virtualenv à l'intérieur d'un conteneur n'a pas beaucoup de sens car l'isolation est déjà assurée par Docker, il n'y aurait pas beaucoup d'intérêt à le faire.
3 votes
Duplicata possible de quelle est la différence entre vagrant, docker, virtualenv ou simplement une machine virtuelle ?