Versuch, ein referenziertes Plugin zu deaktivieren (optional)
In diesem optionalen Schritt versuchen Sie, ein Plugin zu deaktivieren, das derzeit verwendet wird oder von dem andere Ressourcen abhängig sind. Dies zeigt, wie Docker solche Situationen behandelt.
Zunächst aktivieren wir erneut das vieux/sshfs
-Plugin, damit wir es verwenden können.
docker plugin enable vieux/sshfs
Jetzt erstellen wir ein Docker-Volume, das das vieux/sshfs
-Plugin nutzt. Dies schafft eine Abhängigkeit vom Plugin.
docker volume create --driver vieux/sshfs -o sshcmd=user@host:/path/to/dir -o IdentityFile=~/.ssh/id_rsa sshfs_volume
Hinweis: Dieser Befehl wird wahrscheinlich fehlschlagen, da Sie keinen gültigen SSH-Host und kein gültiges SSH-Schlüsselpaar konfiguriert haben. Dies ist beabsichtigt und dient dazu, ein Volume zu erstellen, das versucht, das Plugin zu nutzen, und somit eine Referenz zu erstellen. Sie werden eine Fehlermeldung sehen, die darauf hinweist, dass die Erstellung des Volumes fehlgeschlagen ist.
Jetzt versuchen wir, das vieux/sshfs
-Plugin erneut zu deaktivieren, während das Volume sshfs_volume
existiert, auch wenn die Erstellung des Volumes fehlgeschlagen ist.
docker plugin disable vieux/sshfs
Sie sollten eine Fehlermeldung ähnlich der folgenden sehen:
Error response from daemon: plugin vieux/sshfs is in use by volume sshfs_volume
Dieser Fehler tritt auf, weil Docker es verhindert, dass Sie ein Plugin deaktivieren, das derzeit von anderen Docker-Ressourcen, wie Volumes, referenziert wird. Dies ist ein Sicherheitsmechanismus, um unerwartetes Verhalten oder Datenverlust zu vermeiden.
Um das Plugin in diesem Szenario erfolgreich zu deaktivieren, müssten Sie zunächst die abhängige Ressource (in diesem Fall das Volume) entfernen. Löschen wir das Volume:
docker volume rm sshfs_volume
Jetzt sollten Sie in der Lage sein, das Plugin zu deaktivieren:
docker plugin disable vieux/sshfs
Diesmal sollte der Befehl ohne Fehlermeldung erfolgreich ausgeführt werden.
Dieser Schritt zeigt, dass Docker Abhängigkeiten verwaltet und verhindert, dass Sie Plugins deaktivieren, die derzeit aktiv genutzt werden.