参照されているプラグインを無効化しようとする(オプション)
このオプションのステップでは、現在使用中またはそれに依存するリソースがあるプラグインを無効化しようとします。これにより、Docker がこのような状況をどのように処理するかを示します。
まず、vieux/sshfs
プラグインを再度有効化して使用できるようにしましょう。
docker plugin enable vieux/sshfs
次に、vieux/sshfs
プラグインを使用する Docker ボリュームを作成します。これにより、プラグインに依存関係が生じます。
docker volume create --driver vieux/sshfs -o sshcmd=user@host:/path/to/dir -o IdentityFile=~/.ssh/id_rsa sshfs_volume
注意: このコマンドは、有効な SSH ホストとキーが構成されていないため、おそらく失敗します。これは予想されることであり、プラグインを 使用しようとする ボリュームを作成する目的で行われており、参照を作成する役割を果たします。ボリュームの作成に失敗したことを示すエラーメッセージが表示されます。
では、ボリューム sshfs_volume
が存在する状態で、ボリュームの作成が失敗したとしても、vieux/sshfs
プラグインを再度無効化してみましょう。
docker plugin disable vieux/sshfs
次のようなエラーメッセージが表示されるはずです。
Error response from daemon: plugin vieux/sshfs is in use by volume sshfs_volume
このエラーが発生するのは、Docker がボリュームなどの他の Docker リソースによって現在参照されているプラグインを無効化することを防止するためです。これは、予期しない動作やデータ損失を防ぐための安全機構です。
このシナリオでプラグインを正常に無効化するには、まず依存するリソース(この場合はボリューム)を削除する必要があります。ボリュームを削除しましょう。
docker volume rm sshfs_volume
これで、プラグインを無効化できるはずです。
docker plugin disable vieux/sshfs
今回は、エラーメッセージなしでコマンドが成功するはずです。
このステップは、Docker が依存関係を管理し、アクティブに使用されているプラグインを無効化することを防止することを示しています。