Aller au contenu

Préférences et cookies

Afin d’améliorer votre expérience sur notre site et de réaliser des statistiques de visites, nous utilisons des cookies. Rien n’est déposé sans votre accord, et le refus n’enlève l’accès à aucun contenu. Ce choix peut être modifié à tout moment.

Gérer les traceursVos données

Personnaliser

ArticleApplications & Développement

8 outils open source pour améliorer Docker

Des interfaces graphiques aux outils complémentaires, en passant par l'utilisation de la plateforme de conteneurs pour rationaliser le développement et les tests, ces huit projets permettent au porte-conteneur Docker de flotter.

La rédaction

Clignez des yeux et vous pourriez peut-être manquer les développements les plus intéressants autour de Docker ces derniers jours. En plus des progrès de la plateforme elle-même, beaucoup d’autres projets ont été construits sur Docker ou ont été dynamiser par le fournisseur de solutions de conteneurisation. Dans la plupart des cas, ces outils tirent parti des workflows techniques et des stratégies de déploiement proposées par Docker.

Voici huit créations open source qui sont boosté par l’éditeur et qui le lui rendent bien. Soit en simplifiant davantage l’utilisation de Docker, soit en l’utilisant pour des cas d’utilisation spécifiques.

Dusty

Environnement de développement sous licence MIT, alimenté par Docker, Dusty est destiné à améliorer l'utilisation de Docker Compose ou de Vagrant pour la gestion des conteneurs. Les développeurs à l'origine de cette solution affirment, par exemple, que Dusty a un modèle de spécifications plus simple que le premier service et qu'il gère mieux l'isolation basée sur la version des dépendances d'applications et des mises à jour de services que le second. Dusty permet également de créer des tests dans le cadre d'une spécification d'environnement et permet de transformer des procédures en plusieurs étapes en un script pouvant être appelé plus facilement.

Gockerize

Voici un outil pour les fans du langage de programmation Go. Sous licence BSD, Gockerize permet de créer des binaires Go statiques et de les conditionner dans des conteneurs Go miniatures. Créé par les fondateurs d’AeroFS, l’outil inclut des fonctionnalités telles que « la possibilité d’appliquer automatiquement un ensemble de correctifs à la bibliothèque Golang. Quelque chose qui, bien que très rarement nécessaire, peut sauver la vie » peut-on lire dans le billet de blog présentant le projet. Gockerize ne dépend pas trop de l’extérieur en dehors de Go, Docker 1.5 et suivants et de l’interpréteur en ligne de commande de type script Bash (Bourne-again shell).

Hyper

Considéré comme un « outil indépendant de l’hyperviseur permettant d’exécuter des images Docker sur n’importe quel hyperviseur », Hyper utilise Docker, QEMU et Xen pour atteindre ses objectifs. Les créateurs de l’outils affirment qu’il utilise au minimum les ressources (28 Mo), s’amorce à la vitesse d’un conteneur plutôt que d’une machine virtuelle, offre des performances élevées, et une isolation matérielle des applications. Un cas d’utilisation proposé pour Hyper consiste à créer des applications multi-tenant basées sur Docker.

Docker Compose UI

Projet sous licence MIT, Docker Compose UI fournit à Docker Compose une interface web basée sur l’architecture Flask de Python. Les conteneurs peuvent être exécutés localement ou sur un hôte distant. L’interface de Docker Compose est elle-même disponible dans un conteneur du fournisseur pour plus de commodité. Certains projets de démonstration fournis avec cette interface utilisateurs ne peuvent pas évoluer « en raison de confits liés aux ports publiés ».

Kitematic

Parfois, on a simplement besoin d’une interface graphique. Kitematic la fournit pour la gestion des conteneurs Docker sous MacOS, Ubuntu Linux et Windows. Les fonctionnalités supplémentaires de Kitematic incluent l’exposition automatique des données de volume du conteneur par le biais du système de fichiers, la fourniture d’une interface CLI intégrée à Docker et la synchronisation automatique de son état pour correspondre aux modifications apportées à Docker (par exemple, lors de l’ajout de nouvelles images de conteneur).

Logspout

Le monde Unix a une longue tradition de combinaison de petits programmes pour résoudre de gros problèmes. Logspout applique la même philosophie à la gestion des logs à partir des conteneurs Docker. Logspout dirige tous les historiques (stdout et stderr, principalement) de tous les conteneurs d'un hôte donné vers la cible jugée la meilleure. Tous les journaux agrégés peuvent être visualisés en temps réel simplement en lisant un flux HTTP.

Elsy

Elsy est décrit comme « un outil de compilation multilingue, basé sur l'opinion », utilisant Docker et Docker Compose. Il permet de créer de manière cohérente un référentiel de logiciels dans tous les environnements et de conserver les outils nécessaires pour effectuer la construction au minimum, quelle que soit le langage utilisé. Blackbox-test, une des fonctionnalités les plus vendues, permet de tester tous les conteneurs construits de manière à refléter leur utilisation réelle en production. Par exemple, tout service nécessitant une base de données aura un conteneur de base de données configuré pour celui-ci et Elsy supprimera automatiquement l'environnement de test par la suite.

Habitus

Un autre outil de génération basé sur Docker, Habitus utilise un fichier Docker et un fichier build.yml pour créer des versions de conteneur en plusieurs étapes contenant un nombre quelconque de commandes arbitraires. Chaque étape de la construction peut être basée sur une étape précédente pour garantir le bon fonctionnement des dépendances en plusieurs étapes. Habitus prend également en charge l’inclusion de secrets dans un processus de construction, sans laisser de traces dans l’image.

Newsletter

La Quotidienne LMI

Recevez chaque matin l’actualité IT de la rédaction.

8 outils open source pour améliorer Docker