Dockerファイルシステムに開いているファイルはありませんが、マウント解除できません。

Dockerファイルシステムに開いているファイルはありませんが、マウント解除できません。

/var/lib/dockerUbuntu 14.04を使用してext4ファイルシステムをインストールしました。

私は走ってumount /var/lib/docker次を得ました:

umount: /var/lib/docker: device is busy.

Dockerを閉じましたservice docker stopが、ps auxプロセスは表示されません。

奇妙なことは、fuser -M /var/lib/dockerどちらもlsof +f -- /var/lib/dockerファイルを開くプロセスを示していないことです。

同じ設定を使用する40を超える他のサーバーでは、これは発生しません。ちょっと分かりました。

再起動すると問題が解決しました。何が起こったのかを知っている人がいる場合、または問題が再び発生した場合は、調査できる他の方法があるかどうか疑問に思います。

  • Docker(1.11.2)は、このFSの上にあるコンテナのオーバーレイファイルシステムとしてaufsを使用してきました。しかし、すべてのコンテナとDockerプロセスはumount
  • カーネルの詳細:Linux node05 4.4.0-38-generic #57~14.04.1-Ubuntu SMP Tue Sep 6 17:20:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

関連質問:

アップデート - 他のサーバーで再現

この状況は、同じ状況で非常に似た構成を持つ他のサーバーで繰り返されます。つまり、dockerは終了しますが、umount /var/lib/docker「使用中」なので終了できません。

以前と同じfuserで、lsofdocker FSでファイルを開くプロセスは表示されません。

mount | grep aufsaufs ファイルシステムを表示しません。

df -h| grep docker/var/lib/dockerディレクトリにインストールされている2つのDocker管理ファイルシステムを表示します(lsofこれらのファイルシステムは表示されません)。

ただし、両方のファイルシステムをアンマウントしても問題は解決しません。

解決策

唯一の回避策は、ファイルシステムを/etc/fstab一時的にコメントアウトするように編集し、/var/lib/dockerサーバーを再起動して/var/lib/dockerマウントされないようにすることです。

関連情報