L'équipe Docker a profité de la DockerCon, la conférence dédiée à Docker, pour lancer la version 1.0 de leur outil de gestion de conteneurs. Elle intervient quelques jours après la sortie de la 0.12, qui était axée sur la stabilité, la performance et l'utilisabilité plutôt que d'introduire de nouvelles fonctionnalités importantes. Le fait d'être "Prêt pour la production" signifie que Docker.io offre maintenant des services de support pour Docker.
Docker est utilisé pour "construire, déployer et lancer" des applications dans des conteneurs Linux. Comme un conteneur d'expédition traditionnel, un conteneur d'application fournit l'isolement approprié pour que les choses puissent être déplacées sans considération pour le contenu. Docker fournit le conteneur, les infrastructures (telles que les dernières versions de Linux) sont l'endroit pour mettre les conteneurs, et les développeurs mettent leur code à l'intérieur des conteneurs. Il y a 3 éléments clés pour l'environnement :
-
L'outil en ligne de commande Docker, qui est utilisé pour gérer le cycle de vie des conteneurs et les images à partir desquelles sont construits les conteneurs.
-
Dockerfile - un langage de script pour créer des images Docker.
-
Référentiels d'images. Docker.io gère le registre public par défaut, maintenant rebaptisé Docker Hub. Les utilisateurs peuvent également créer leurs propres dépôts privés ou utiliser des référentiels hébergés tels que Gandalf.
Docker Hub a connu un lifting par rapport à l'ancien index Docker, et ressemble plus à une marketplace d'applications. On trouve des images CentOS, MongoDB, MySQL, Nginx, Node.js, PostgreSQL, Redis, Ubuntu et Wordpress. Les référentiels privés, qui ont été en version bêta depuis quelques mois, sont maintenant disponibles en version stable. Les utilisateurs peuvent obtenir un repo privé gratuitement, et il y a un système d'abonnement à plusieurs niveaux pour un plus grand nombre de repo privés.
Docker.io offre maintenant des services de support pour les entreprises souhaitant lancer Docker en production. Le «support long terme» pour Docker 1.0 est de 12 mois à partir de sa sortie. Deux niveaux de support, standard et premium, sont offerts. Le modèle de prix de l'assistance n'a pas encore été annoncé. Les partenariats avec des intégrateurs de systèmes qui peuvent aider avec des projets Docker ont été annoncés. L'équipe Docker a aussi sa propre offre de services avec un jour «Jumpstart» pour 4 950 $ et trois «jours Bootstrap» pour 9 990 $.
Les systèmes de gestion de conteneurs comme Docker sont souvent comparés et contrastés aux systèmes de virtualisation comme VMware ESX, Xen ou KVM. La principale différence est que les conteneurs partagent un noyau Linux, et les ressources gérées par celui-ci, plutôt que d'avoir un système d'exploitation distinct (et noyau) comme c'est le cas avec les machines virtuelles. Docker a été construit au-dessus du projet LinuX Containers (LXC), mais LXC a été remplacé en faveur de la bibliothèque libcontainer écrite en Go et sortie en mars 2014 par l'équipe Docker elle-même. Docker utilise les cgroups dans le noyau pour assurer l'isolation, les namespaces, et un système de fichiers de type "union" comme AUFS. En principe, Docker peut être exécuté sur n'importe quelle version de Linux qui a les cgroups. En pratique, un noyau plus récent est généralement souhaitable pour la sécurité, la stabilité et le support de l'Union File System. Docker a été inclus dans la dernière version d'Ubuntu 14.04, et sera également en vedette dans Red Hat Enterprise Linux 7 et CentOS 7. Il y a aussi une tendance vers de nouvelles distributions Linux légères comme CoreOS et des projets comme Atomic de Red Hat.