Docker plugins
| Fiche express | |
|---|---|
| Type | Extensions du moteur Docker (pilotes de volume, de réseau...) |
| Installation | docker plugin install
|
| Exemple courant | vieux/sshfs — volumes montés via SSHFS
|
| Voir aussi | Docker swarm · Docker service |
Les plugins Docker étendent le moteur avec des fonctionnalités qui ne font pas partie du cœur de Docker — le cas le plus courant étant les pilotes de volume (volume drivers) permettant de monter du stockage externe (SSHFS, NFS, stockage bloc de fournisseurs cloud...) directement comme volume Docker.
Pilote de volume multi-instances : exemple SSHFS
Sur un cluster Swarm, un plugin de volume doit être installé sur chaque nœud susceptible d'exécuter une tâche qui l'utilise :
docker plugin install --grant-all-permissions vieux/sshfs
Préparer côté serveur de stockage un répertoire à exposer par SSH, puis créer le volume correspondant :
docker volume create --driver vieux/sshfs \
-o sshcmd=<UTILISATEUR>@<IP_SERVEUR_STOCKAGE>:/chemin/distant \
-o password=<MOT_DE_PASSE> \
sshvolume
docker volume ls
L'authentification par mot de passe en clair dans les options du volume n'est adaptée qu'à un test rapide ; en production, préférer une authentification par clé SSH ou un secret Docker (à vérifier selon le pilote utilisé).
Utilisation en mode service
Le même pilote de volume peut être référencé lors de la création d'un service, ce qui permet à toutes ses répliques — potentiellement sur des nœuds différents — de monter le même stockage distant :
docker service create \
--replicas=3 \
--name storage-service \
--mount volume-driver=vieux/sshfs,source=cluster-volume,destination=/app,volume-opt=sshcmd=<UTILISATEUR>@<IP_SERVEUR_STOCKAGE>:/chemin/distant,volume-opt=password=<MOT_DE_PASSE> \
busybox cat /app/message.txt
docker service logs storage-service
Voir aussi
- Docker swarm — vue d'ensemble du cluster
- Docker service — création et cycle de vie des services