Toute personne qui s’intéresse à la virtualisation par conteneur tombera sur le logiciel Docker. Ce projet open source est devenu en quelques années, grâce à un excellent marketing, synonyme de la technologie de la conteneurisation. Docker est un outil de lignes de commandes qui permet de démarrer, d’arrêter et de gérer des conteneurs. Celui-ci se base sur des techniques de Linux telles que Cgroups et Namesspaces afin de réaliser une séparation des ressources des conteneurs individuels. A l’origine, Docker reposait sur le format de containers Linux, alias LXC. Aujourd’hui, les conteneurs Docker utilisent une interface de programmation appelée Libcontainer.
Une caractéristique centrale de la plateforme Docker est le Docker Hub, un service en ligne qui contient des images de conteneurs, permettant aux utilisateurs de se les échanger. L’installation d’un conteneur pré-paramétré se réalise aussi facilement qu’un téléchargement sur Internet. Les applications correspondantes sont téléchargées via de simples commandes venant du Hub Docker central et sont ensuite exécutées.
Docker est concurrencé par rkt, qui prend en charge les images Docker mais aussi le format ACI (App Container Images).