はじめに
dockerでHost OSが不正終了したり、緊急再起動をかけたりした場合
にdocker startを行うと
こんなエラーが出てることがあります。
Error response from daemon: container "8b3ee437a0f59a74e99b6098ce2662aadbeb89b47d0a65475d24ab412949bd74"
: already exists
docker ps
で見ても、起動中のコンテナがないので、コンテナを削除することもできません。
対処法
エラーが出たコンテナのハッシュを全部コピーして、次のコードを実行してください。
docker run -it --rm -v /var/run/docker/containerd/docker-containerd.sock:/docker-containerd.sock\
--privileged docker:dind docker-containerd-ctr --namespace moby\
--address /docker-containerd.sock c rm [Container Hash]
[Container Hash]・・・ハッシュはエラーで出力される長いハッシュをフルで入力すること
コンテナOSの種類によっては、動作しない可能性があります。そんな場合は、こちらのIssueをご覧ください。
https://github.com/moby/moby/issues/36145