ホームページ  >  記事  >  運用・保守  >  docker がコンテナを削除できない場合はどうすればよいですか?

docker がコンテナを削除できない場合はどうすればよいですか?

王林
王林オリジナル
2020-03-24 14:25:364577ブラウズ

docker がコンテナを削除できない場合はどうすればよいですか?

問題の説明:

delete コマンドを実行しても docker ディレクトリを削除できません:

# ll /var/lib/docker/containers | grep caf8ef20f3c1
# cd /var/lib/docker/containers 
# rm -rf caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8

エラーは次のように報告されます:

rm: 无法删除"/var/lib/docker/containers/caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8/secrets": 设备或资源忙
    无法删除"/var/lib/docker/containers/caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8/shm": 设备或资源忙

上記のエラー レポートから、「secrets」と「shm」の共有マウントは削除できないことがわかります。

(推奨チュートリアル: docker チュートリアル)

解決策:

まずマウント場所を見つけてから、マウントをキャンセルしてから削除します:

# cat /proc/mounts |grep "docker" |grep "caf8ef20f3c1"

Unmount

# umount /data/sys/var/docker/containers/caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8/secrets
# umount /data/sys/var/docker/containers/caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8/shm

再度表示:

# cat /proc/mounts |grep "docker" |grep "caf8ef20f3c1"  //已经没有啦

Docker ディレクトリの削除を実行します:

# cd /var/lib/docker/containers 
# rm -rf caf8ef20f3c1c78f03a5844ee23abc1d7e44246f242292040f1ef288899d0cb8

コンテナ サービスの削除

ここで、rm または kill を使用してコンテナ サービスを削除します:

# docker rm -f caf8ef20f3c1c
或
# docker kill --signal=SIGINT  caf8ef20f3c1

上記のコマンドの実行後にハングが発生した場合は、docker サービスを再起動してください:

# systemctl restart docker

以上がdocker がコンテナを削除できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。