GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

Comment gérer les plugins du moteur Docker

Docker Engine prend en charge un système de plug-in qui vous permet d'ajouter des fonctionnalités supplémentaires à l'exécution du conteneur. Les plugins pour les nouveaux pilotes de stockage, les piles réseau et les systèmes de journalisation sont tous disponibles gratuitement.

Les versions modernes de Docker Engine incluent tout ce dont vous avez besoin pour gérer les plugins dans la CLI. Nous nous concentrons sur ce système de plug-in "géré" dans ce guide. Vous devez installer et maintenir manuellement les plugins qui utilisent le système de plugin hérité.

Tout sur les plugins

Les plugins étendent Docker Engine avec de nouvelles fonctionnalités trop spécifiques pour être livrées avec l'installation générale. Normalement, vous n'interagissez pas directement avec les plugins. Une fois qu'un plugin est installé, vous pouvez référencer les ressources qu'il fournit lors de l'exécution des commandes Docker existantes.

Il existe trois principaux types de plug-ins :

  • Journalisation – Ces plugins ajoutent de nouveaux pilotes de journalisation, vous permettant de stocker les journaux dans des emplacements en dehors de Docker Engine et de votre machine hôte.
  • Réseau – Les plug-ins de mise en réseau peuvent ajouter la prise en charge de nouveaux types de réseau et des fonctionnalités associées.
  • Volume – Les plug-ins de stockage apportent des systèmes de fichiers et des pilotes de volume supplémentaires à Docker, vous offrant ainsi plus d'options pour les données persistantes.

Des plugins avec des fonctionnalités qui ne relèvent pas de ces domaines principaux sont également disponibles. Les plugins sont créés par des fournisseurs communautaires ; vous pouvez écrire le vôtre à l'aide de l'API des plugins publics et du SDK Go.

Les plugins sont distribués via Docker Hub. Vous pouvez trouver les plugins disponibles en vous rendant sur la page Explorer et en sélectionnant l'onglet Plugins en haut. Plus de 600 plugins sont actuellement disponibles.

Si vous écrivez votre propre plugin, vous pouvez le soumettre à Docker Hub avec le docker plugin push commande. Cela fonctionne de la même manière que de pousser une image vers le registre public. Vous devez exécuter docker plugin create d'abord pour convertir le manifeste et le système de fichiers de votre plugin en un package prêt à être soumis. Vous pouvez obtenir plus d'informations sur la création de plugins dans la documentation Docker.

Installer un plugin

Les plugins sont installés avec l'docker plugin install commande. Ceci accepte le nom d'un plugin Docker Hub comme argument :

docker plugin install store/example/example-plugin:version

Les références de plugin ressemblent à des références d'image qui commencent par store/ . Les mêmes principes de balisage s'appliquent lors de la spécification de la version du plug-in à installer. Contrairement aux images, vous ne pouvez pas omettre la version pour extraire automatiquement le latest balise.

Vous pouvez trouver le numéro de version d'un plugin et copier une commande d'installation prête à l'emploi en cliquant sur le bouton "Instructions d'installation" sur sa page Docker Hub. Les plugins gratuits vous permettront de passer à un nouvel écran avec la boîte de copier-coller habituelle en haut à droite. Exécutez la commande dans votre terminal pour lancer l'installation du plugin.

Les plugins demandent généralement l'accès aux privilèges de l'hôte afin qu'ils puissent fournir leurs fonctionnalités. Par exemple, un plugin réseau devra avoir accès à l'host de Docker réseau afin qu'il puisse connecter de nouvelles ressources. Confirmez l'invite d'autorisation en tapant y et appuyez sur Entrée pour terminer l'installation. Vous pouvez ignorer l'invite en ajoutant le --grant-all-permissions flag à votre install commande; ceci est idéal pour les installations non interactives, mais risque d'accorder des autorisations involontaires si un plug-in est mis à jour avec de nouvelles fonctionnalités.

Les plugins sont automatiquement activés après l'installation. L'activation d'un plug-in permet l'exécution de scripts de pré-installation. Utilisez le --disable pour définir par défaut un plug-in sur le statut désactivé, le laissant inerte jusqu'à ce qu'il soit activé manuellement ultérieurement.

Affichage des détails du plugin

Une fois installé, votre plugin apparaîtra lors de l'exécution de docker plugin ls :

docker plugin ls

Des informations plus détaillées sur un seul plugin peuvent être obtenues à partir de docker inspect commande. Cela accepte un ID ou une balise de plugin et affiche un JSON détaillé qui décrit le manifeste du plugin :

docker inspect eccffc

Installation hors ligne

La CLI Docker n'a pas de moyen intégré d'installer des plugins hors ligne. Néanmoins, vous pouvez ajouter des plugins à une installation Docker isolée en les installant d'abord sur un client en réseau, puis en copiant les fichiers du plugin sur le système hors ligne.

Vous trouverez les plugins installés dans le /var/lib/docker/plugins répertoire sur votre hôte. Chaque plugin obtient son propre sous-répertoire nommé avec son ID. Ces identifiants sont visibles dans la sortie du docker plugin ls commande.

Activation et désactivation des plugins

Les plugins peuvent être activés ou désactivés. Vous verrez l'état actuel dans la dernière colonne du ls production. Un plug-in désactivé ne sera pas chargé, il agira donc comme s'il n'était pas installé.

Utilisez l'docker plugin enable et docker plugin disable commandes pour changer le statut d'un plugin. Fournissez l'ID de l'un de vos plugins installés comme seul argument de la commande :

docker plugin enable eccffc

Il se peut que vous ne puissiez pas désactiver un plug-in s'il est activement utilisé par votre configuration Docker Engine ou l'un de vos conteneurs. Ajout du -f flag forcera la désactivation du plug-in, mais doit être utilisé avec parcimonie car vous risquez des sorties de conteneur involontaires.

Les plugins sont désinstallés avec le docker plugin rm commande. Fournissez l'ID ou le nom d'un plugin pour le supprimer complètement de Docker. rm a les mêmes comportements que disable lors de la gestion des plug-ins activement utilisés et des suppressions forcées par la suite.

Modification des paramètres du plugin

Le système de plugins de Docker comprend un mécanisme intégré permettant aux auteurs de plugins d'exposer des paramètres personnalisables. En tant qu'utilisateur, vous pouvez modifier ces paramètres via le docker plugin set commande :

docker plugin set example-plugin setting-key=new-value

Remplacer example-plugin avec l'ID ou le nom du plugin que vous ciblez. La valeur de la setting-key du plugin le paramètre sera mis à jour sur new-value .

Les paramètres disponibles varient naturellement d'un plugin à l'autre. Ils doivent être documentés dans la description du plugin sur Docker Hub. La CLI Docker n'a pas de commande intégrée pour afficher tous les paramètres disponibles pour un plugin, mais ils s'affichent dans docker plugin inspect production. Recherchez les Settings champ dans la représentation JSON d'un plugin ; il contiendra des objets avec Name et Settable champs pour les options que vous pouvez modifier via la CLI.

Mise à jour de vos plugins

Les plugins sont mis à jour avec la docker plugin update commande. Comme les autres commandes, elle prend un ID de plugin ou une balise comme argument.

La mise à niveau d'un plugin téléchargera et installera la dernière version disponible sur Docker Hub. Si vous utilisez déjà la version la plus récente, la commande réinstallera la version actuelle. Vous serez invité à accorder au plugin tous les nouveaux privilèges dont il a besoin. Le --grant-all-permissions est accepté pour ignorer l'invite dans les environnements où la saisie interactive n'est pas possible.

Il n'y a aucun moyen de mettre à jour tous les plugins de votre système avec une seule commande. Vous feriez mieux de vous abonner aux annonces de publication des fournisseurs de vos plugins, puis d'appliquer les mises à jour à votre installation dès qu'elles seront disponibles. Cela garantira que vos plugins restent sécurisés et pris en charge.

Résumé

L'écosystème de plugins de Docker vous permet d'ajouter des fonctionnalités supplémentaires à Docker Engine. Les plugins résident sur Docker Hub et peuvent être installés depuis votre terminal. La CLI intègre un programme de mise à jour des plugins, mais il ne fonctionne qu'avec un seul plugin à la fois, pas avec l'intégralité de votre catalogue.

Maintenant que vous savez utiliser et gérer les plugins, vous pouvez commencer à parcourir Docker Hub pour trouver des options pour améliorer votre flux de travail. Elastic Logging Plugin diffuse les journaux de conteneur Docker vers un cluster de pile Elastic, vSphere pour Docker vous permet d'utiliser le stockage VMWare vSphere pour vos volumes persistants et Weave Net apporte la mise en réseau chiffrée multidiffusion à Docker. Si vous ne voyez pas ce dont vous avez besoin, utilisez l'API du plug-in pour essayer d'écrire votre propre solution que vous pourrez publier auprès de la communauté élargie via le Hub.


Docker
  1. Comment installer le moteur Docker sur Debian 9 Stretch Linux

  2. Comment installer Docker Engine sur Ubuntu :un guide étape par étape

  3. Comment installer Docker Engine sur Debian 11

  4. Comment supprimer/désinstaller le plugin Openh264 dans Firefox 33 ?

  5. Comment gérer les plugins WordPress dans Plesk

Comment gérer les plugins Vim à l'aide de Vundle sous Linux

Comment installer Docker Portainer pour gérer les conteneurs

Comment déployer et gérer un conteneur Docker MongoDB

Comment supprimer les conteneurs Docker

Comment arrêter les conteneurs Docker

Comment gérer les conteneurs Docker