Docker est une solution open source pour tester et déployer rapidement des applications. Docker intègre des logiciels dans des conteneurs qui incluent les éléments nécessaires à l'exécution d'une application, notamment les outils système, le code et l'environnement d'exécution. Docker permet de déployer et dimensionner des applications dans n'importe quel environnement, avec l'assurance que le code s'exécutera correctement.
Docker accorde un contrôle total avec sa syntaxe simplifiée. Il est possible de créer, déployer et démarrer, copier et déplacer d'un environnement à un autre des conteneurs depuis n’importe quel ordinateur. L'installation et la désinstallation des conteneurs sont indépendantes des autres conteneurs installés, ce qui permet de mettre à jour ou de remplacer un conteneur sans modifier les autres conteneurs.
En utilisant Docker, les applications fonctionnent indépendamment du système et de l'environnement auxquels elles sont soumises. Cela permet de gagner du temps pour développer l'application au lieu de passer du temps à réfléchir au système sur lequel elle fonctionnera. Docker permet d’installer et de démarrer des conteneurs qui fonctionnent ensemble. Combiné avec docker-compose il est possible de déployer toute une application et ses dépendances avec une seule commande. Enfin, les installations de mises à jour peuvent être simplifiées par une configuration facile à implémenter. Étant donné que Docker est adopté à grande échelle, il possède un écosystème robuste d'outils et d'applications standard.