Comment utiliser la commande docker plugin create pour construire un plugin

DockerDockerBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à créer un plugin Docker en utilisant la commande docker plugin create. Ce processus consiste à préparer la structure de répertoire et le fichier de configuration nécessaires pour votre plugin, puis à utiliser la commande pour construire le plugin à partir de ces éléments.

Le laboratoire vous guidera tout au long de la préparation du répertoire de données du plugin, ce qui inclut la création d'un fichier config.json pour définir les propriétés et l'interface du plugin. Ensuite, vous exécuterez la commande docker plugin create pour construire le plugin à partir des données préparées. Enfin, vous vérifierez que le plugin a été créé avec succès et est disponible dans votre environnement Docker.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/VolumeOperationsGroup(["Volume Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/create("Create Container") docker/VolumeOperationsGroup -.-> docker/volume("Manage Volumes") subgraph Lab Skills docker/ls -.-> lab-555187{{"Comment utiliser la commande docker plugin create pour construire un plugin"}} docker/create -.-> lab-555187{{"Comment utiliser la commande docker plugin create pour construire un plugin"}} docker/volume -.-> lab-555187{{"Comment utiliser la commande docker plugin create pour construire un plugin"}} end

Préparer le répertoire de données du plugin

Dans cette étape, nous allons préparer la structure de répertoire requise pour notre plugin Docker. Un plugin Docker a besoin d'une disposition de répertoire spécifique pour fonctionner correctement. Ce répertoire contiendra la configuration du plugin et éventuellement d'autres fichiers nécessaires.

Tout d'abord, accédez à votre répertoire de projet.

cd ~/project

Maintenant, créez un répertoire pour les données du plugin. Nous l'appellerons my-plugin-data.

mkdir my-plugin-data

À l'intérieur du répertoire my-plugin-data, nous devons créer un fichier de configuration nommé config.json. Ce fichier contiendra les détails de configuration du plugin.

cd my-plugin-data
nano config.json

Ajoutez le contenu suivant au fichier config.json. Il s'agit d'une configuration de base qui spécifie le type et la description du plugin.

{
  "Description": "My first Docker plugin",
  "Types": [
    {
      "Name": "volume",
      "Description": "A simple volume plugin"
    }
  ],
  "Interface": {
    "Types": ["docker.volumedriver/1.0"],
    "Socket": "my-plugin.sock"
  },
  "Entrypoint": ["/usr/local/bin/my-plugin"]
}

Décortiquons le fichier config.json :

  • Description : Une description lisible par un humain du plugin.
  • Types : Spécifie les types de plugins fournis. Dans ce cas, il s'agit d'un plugin volume.
  • Interface : Définit l'interface du plugin.
    • Types : Spécifie le type d'interface, docker.volumedriver/1.0 pour un pilote de volume.
    • Socket : Le nom du socket de domaine Unix sur lequel le plugin écoutera. Docker communiquera avec le plugin via ce socket.
  • Entrypoint : La commande que Docker exécutera lorsque le plugin sera activé. Il doit s'agir du chemin vers l'exécutable de votre plugin dans le système de fichiers racine du plugin.

Enregistrez le fichier et quittez l'éditeur nano en appuyant sur Ctrl + X, puis Y, et Entrée.

Enfin, revenez au répertoire racine du projet.

cd ~/project

Vous avez maintenant créé avec succès la structure de répertoire de base et le fichier de configuration pour votre plugin Docker.

Créer le plugin en utilisant la commande docker plugin create

Dans cette étape, nous allons utiliser la commande docker plugin create pour créer le plugin à partir du répertoire que nous avons préparé à l'étape précédente. La commande docker plugin create prend en arguments le nom du plugin et le chemin vers le répertoire de données du plugin.

La syntaxe de la commande est docker plugin create <nom-du-plugin> <répertoire-de-données-du-plugin>.

Nous allons nommer notre plugin my-plugin et utiliser le répertoire my-plugin-data que nous avons créé. Assurez-vous d'être dans le répertoire ~/project.

cd ~/project
sudo docker plugin create my-plugin ./my-plugin-data

Vous devriez voir un message indiquant que le plugin est en cours de création. En cas de succès, la commande se terminera sans erreur.

La commande docker plugin create lit le fichier config.json dans le répertoire spécifié et enregistre le plugin auprès du démon Docker. À ce stade, le plugin est créé mais n'est pas encore activé.

Vérifier le plugin créé

Dans cette étape, nous allons vérifier que le plugin a été créé avec succès et est listé par Docker. Nous pouvons utiliser la commande docker plugin ls pour lister tous les plugins disponibles.

Assurez-vous d'être dans le répertoire ~/project.

cd ~/project
sudo docker plugin ls

La sortie de cette commande devrait afficher une liste de plugins. Vous devriez voir une entrée pour my-plugin avec le statut disabled (désactivé). Cela confirme que le plugin a été enregistré auprès de Docker mais n'est pas encore actif.

La sortie ressemblera à ceci (l'ID sera différent) :

ID             NAME        TAG       DESCRIPTION             ENABLED
a1b2c3d4e5f6   my-plugin             My first Docker plugin   false

La colonne ENABLED indique false, ce qui signifie que le plugin est actuellement désactivé. Pour utiliser le plugin, vous devriez l'activer en utilisant docker plugin enable. Cependant, comme il s'agit simplement d'une démonstration de la création de la structure du plugin, nous ne l'activerons pas dans ce laboratoire.

Vous avez maintenant créé avec succès et vérifié l'existence de votre plugin Docker.

Résumé

Dans ce laboratoire, nous avons appris à préparer la structure de répertoires et le fichier de configuration nécessaires pour un plugin Docker. Cela a consisté à créer un répertoire dédié aux données du plugin et à définir les caractéristiques du plugin, telles que sa description, son type, son interface et son point d'entrée, dans un fichier config.json. Cette étape fondamentale est cruciale pour définir la manière dont Docker interagit avec le plugin et le gère.