概要
docker rm --force
を使った場合本来の削除プロセスではなくなるため手動でネットワークからの切断をしなければいけません
環境
- Ubuntu 16.04 LTS
- docker 18.09.2
状況
docker stop
でも docker kill
でもコンテナが停止しない場合に rm --force
を使います
その後コンテナを再作成して docker start
しようとすると以下のようなエラーが発生します
Error response from daemon: endpoint with name C1 already exists in network bridge
Error: failed to start containers: C1
エラー文の通り force 削除したコンテナをネットワークから削除する必要があります
対応方法
docker network inspect bridge
でぶら下がっているコンテナを確認します
Containers の項目の中に force 削除したコンテナがいるはずです
Containers": {
"2c5472b7827e7bb4b68d53551dd851d10ac93b5701bb7f5f303d9dad2d4eb294": {
"Name": "C1",
"EndpointID": "406a9e1968ff0e11d2c384f16220fa87b66e24362f2e9ab6cf5cafec777e058f",
"MacAddress": "02:42:ac:11:00:06",
"IPv4Address": "172.17.0.6/16",
"IPv6Address": ""
}
}
コンテナ ID (上記だと 2c5472b7827e7bb4b68d53551dd851d10ac93b5701bb7f5f303d9dad2d4eb2
) を指定して削除しましょう
またオプションで --force
を指定します
docker network disconnect --force bridge 2c5472b7827e7bb4b68d53551dd851d10ac93b5701bb7f5f303d9dad2d4eb2
もしコンテナ ID で削除できない場合はコンテナ名や EndpointID を指定してみましょう
自分は (理由は不明ですが) コンテナ名をしたら disconnect できる場合がありました
これでコンテナを作り直してスタートすれば OK です
docker create --name C1 C1_image
docker start C1
0 件のコメント:
コメントを投稿