Comment utiliser la commande docker plugin install pour installer et gérer des plugins

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, vous apprendrez à installer et à gérer les plugins Docker en utilisant la commande docker plugin install. Vous explorerez différents scénarios d'installation, notamment l'installation d'un plugin avec les paramètres par défaut, l'installation d'un plugin et sa configuration avec des paramètres spécifiques, ainsi que l'installation d'un plugin sans l'activer immédiatement.

Grâce à des exemples pratiques, vous acquerrez une expérience concrète dans l'extension des capacités de Docker en intégrant des services externes pour le stockage et d'autres fonctionnalités. Enfin, vous apprendrez à vérifier que vos plugins ont été installés avec succès.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/VolumeOperationsGroup(["Volume Operations"]) docker(("Docker")) -.-> docker/SystemManagementGroup(["System Management"]) docker(("Docker")) -.-> docker/NetworkOperationsGroup(["Network Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/VolumeOperationsGroup -.-> docker/volume("Manage Volumes") docker/SystemManagementGroup -.-> docker/system("Manage Docker") docker/NetworkOperationsGroup -.-> docker/network("Manage Networks") subgraph Lab Skills docker/ls -.-> lab-555191{{"Comment utiliser la commande docker plugin install pour installer et gérer des plugins"}} docker/inspect -.-> lab-555191{{"Comment utiliser la commande docker plugin install pour installer et gérer des plugins"}} docker/volume -.-> lab-555191{{"Comment utiliser la commande docker plugin install pour installer et gérer des plugins"}} docker/system -.-> lab-555191{{"Comment utiliser la commande docker plugin install pour installer et gérer des plugins"}} docker/network -.-> lab-555191{{"Comment utiliser la commande docker plugin install pour installer et gérer des plugins"}} end

Installer un plugin avec les paramètres par défaut

Dans cette étape, vous apprendrez à installer un plugin Docker avec ses paramètres par défaut. Les plugins Docker étendent les fonctionnalités de Docker, vous permettant d'intégrer des systèmes externes pour le stockage, la mise en réseau, etc.

Pour installer un plugin, vous utilisez la commande docker plugin install suivie du nom du plugin. Par défaut, Docker téléchargera le plugin depuis Docker Hub.

Installons le plugin rexray/s3fs, qui fournit un stockage basé sur S3 pour les volumes Docker.

docker plugin install rexray/s3fs

Lorsque vous exécutez cette commande, Docker téléchargera le plugin et vous demandera confirmation pour lui accorder les autorisations nécessaires. Tapez y puis appuyez sur Entrée pour continuer.

Plugin "rexray/s3fs" is requesting the following permissions:
 - network: [host]
 - mount: [/dev/fuse]
 - allow-vulnerable-api: true
 - allow-host-access: true
 - allow-device: [/dev/fuse]
 - allow-cap: [sys_admin]
Do you grant the plugin "rexray/s3fs" these permissions? [y/N] y

Après avoir confirmé, Docker installera et activera le plugin. Vous devriez voir un message indiquant que le plugin a été installé et activé.

rexray/s3fs:latest

Ce message confirme que le plugin rexray/s3fs a été installé avec succès et est maintenant activé, prêt à être utilisé pour créer des volumes basés sur S3.

Installer un plugin et définir des paramètres de configuration

Dans cette étape, vous apprendrez à installer un plugin Docker et à le configurer avec des paramètres spécifiques lors de l'installation. Certains plugins nécessitent des paramètres de configuration, tels que des clés API, des points de terminaison (endpoints) ou d'autres détails spécifiques au service, pour fonctionner correctement.

Vous pouvez passer des paramètres de configuration à la commande docker plugin install en utilisant le format nom_du_plugin nom_du_paramètre=valeur_du_paramètre.

Installons le plugin vieux/sshfs, qui vous permet d'utiliser SSHFS pour les volumes Docker. Ce plugin nécessite de spécifier l'utilisateur SSH et l'hôte.

docker plugin install vieux/sshfs SSH_USER=labex SSH_HOST=localhost

Comme dans l'étape précédente, Docker téléchargera le plugin et vous demandera des autorisations. Tapez y puis appuyez sur Entrée pour accorder les autorisations.

Plugin "vieux/sshfs" is requesting the following permissions:
 - network: [host]
 - mount: [/dev/fuse]
 - allow-vulnerable-api: true
 - allow-host-access: true
 - allow-device: [/dev/fuse]
 - allow-cap: [sys_admin]
Do you grant the plugin "vieux/sshfs" these permissions? [y/N] y

Après avoir confirmé, le plugin sera installé et activé avec les paramètres de configuration spécifiés.

vieux/sshfs:latest

Ce résultat confirme que le plugin vieux/sshfs a été installé et activé avec SSH_USER défini sur labex et SSH_HOST défini sur localhost. Ces paramètres seront utilisés par le plugin lors de la création de volumes.

Installer un plugin sans l'activer

Dans cette étape, vous apprendrez à installer un plugin Docker sans l'activer immédiatement. Cela peut être utile si vous souhaitez installer un plugin mais ne le voulez pas actif avant d'être prêt à l'utiliser, ou si vous devez effectuer des étapes de configuration supplémentaires avant de l'activer.

Pour installer un plugin sans l'activer, vous utilisez le paramètre --disable avec la commande docker plugin install.

Installons le plugin containernetworking/cni, qui fournit des capacités réseau CNI (Container Network Interface), mais le gardons désactivé pour le moment.

docker plugin install --disable containernetworking/cni

Docker téléchargera le plugin et vous demandera des autorisations. Tapez y puis appuyez sur Entrée pour accorder les autorisations.

Plugin "containernetworking/cni" is requesting the following permissions:
 - network: [host]
 - mount: [/dev/fuse]
 - allow-vulnerable-api: true
 - allow-host-access: true
 - allow-device: [/dev/fuse]
 - allow-cap: [sys_admin]
Do you grant the plugin "containernetworking/cni" these permissions? [y/N] y

Après avoir confirmé, le plugin sera installé mais restera dans un état désactivé.

containernetworking/cni:latest

Ce résultat confirme que le plugin containernetworking/cni a été installé avec succès. Dans l'étape suivante, nous vérifierons son statut.

Vérifier le plugin installé

Dans cette étape, vous apprendrez à vérifier le statut des plugins Docker installés. Vous pouvez vérifier quels plugins sont installés, leur version et s'ils sont activés ou désactivés.

Pour lister tous les plugins installés, vous utilisez la commande docker plugin ls.

docker plugin ls

Cette commande affichera un tableau avec des informations sur chaque plugin installé, y compris son ID, son nom, sa description, son statut d'activation et sa version.

Vous devriez voir les trois plugins que nous avons installés dans les étapes précédentes : rexray/s3fs, vieux/sshfs et containernetworking/cni.

ID                  NAME                       DESCRIPTION                                            ENABLED             VERSION
a1b2c3d4e5f6        rexray/s3fs:latest         REX-Ray S3FS Plugin                                    true                latest
g7h8i9j0k1l2        vieux/sshfs:latest         The `sshfs` plugin for Docker.                         true                latest
m3n4o5p6q7r8        containernetworking/cni:latest CNI network plugin for Docker                        false               latest

Notez que rexray/s3fs et vieux/sshfs sont indiqués comme ACTIVÉS (true), tandis que containernetworking/cni est indiqué comme ACTIVÉ (false), car nous l'avons installé avec le paramètre --disable.

Vous pouvez également inspecter un plugin spécifique pour obtenir des informations plus détaillées en utilisant la commande docker plugin inspect suivie du nom ou de l'ID du plugin.

Inspectons le plugin containernetworking/cni :

docker plugin inspect containernetworking/cni

Cette commande affichera un objet JSON détaillé contenant toutes les informations de configuration et de statut du plugin. Vous pouvez examiner cette sortie pour confirmer les paramètres et l'état du plugin. Recherchez la ligne "Enabled": false dans la sortie pour confirmer qu'il est désactivé.

[
  {
    "Id": "m3n4o5p6q7r8",
    "Name": "containernetworking/cni:latest",
    "Enabled": false,
    "Settings": {
      "Args": [],
      "Env": [],
      "Devices": [],
      "Mounts": []
    },
    "PluginReference": "docker.io/containernetworking/cni:latest",
    "Config": {
      "DockerVersion": "20.10.21",
      "Description": "CNI network plugin for Docker",
      "Documentation": "https://github.com/containernetworking/cni",
      "Interface": {
        "Types": ["docker.networkdriver/1.0"],
        "Socket": "cni.sock"
      },
      "Entrypoint": ["/docker-cni-plugin"],
      "PropagatedMount": "/opt/cni",
      "WorkDir": "",
      "User": {},
      "Args": {
        "Name": "",
        "Description": ""
      },
      "Linux": {
        "Capabilities": ["CAP_SYS_ADMIN"],
        "AllowAllDevices": false,
        "Devices": [
          {
            "Name": "fuse",
            "Path": "/dev/fuse"
          }
        ]
      },
      "Rootfs": {
        "Type": "tar",
        "DiffIds": ["sha256:..."]
      }
    }
  }
]

Cette étape conclut le processus d'installation et de vérification des plugins Docker. Vous avez appris à installer des plugins avec les paramètres par défaut, avec des paramètres de configuration spécifiques et à les installer sans les activer immédiatement. Vous savez également comment lister et inspecter les plugins installés pour vérifier leur statut.

Résumé

Dans ce laboratoire (lab), vous avez appris à installer et à gérer les plugins Docker en utilisant la commande docker plugin install. Vous avez pratiqué l'installation d'un plugin avec les paramètres par défaut, ce qui consiste simplement à spécifier le nom du plugin et à confirmer les autorisations demandées.

En outre, vous avez exploré comment installer un plugin tout en définissant des paramètres de configuration spécifiques pendant le processus d'installation, démontrant ainsi comment personnaliser le comportement du plugin dès le départ. Enfin, vous avez appris à vérifier que l'installation d'un plugin s'est bien déroulée.