#author("2022-12-31T22:10:53+09:00","default:ryuichi","ryuichi")
#author("2022-12-31T22:11:44+09:00","default:ryuichi","ryuichi")
* あるイメージを依存してる子イメージを取得する [#oc647700]

** そのイメージに依存しているイメージがあるとイメージ削除できない [#h098421d]
** 問題 そのイメージに依存しているイメージがあるとイメージ削除できない [#h098421d]

 docker rmi abc12345
 Error response from daemon: conflict: unable to delete abc12345 (cannot be forced) - image has dependent child images

- イメージID abc12345は削除できない

** あるイメージを依存してる子イメージを取得する [#y84874e6]
** 方法 [#z29e64b3]
*** 1. あるイメージを依存してる子イメージを取得する [#y84874e6]

 for i in $(docker images -q)
 do
    docker history $i | grep -q abc12345 && echo $i
 done | sort -u
 
 11111111
 22222222
 aaa99999
 abc12345

** 子イメージの詳細を確認する [#t949cd09]
*** 2. 子イメージの詳細を確認する [#t949cd09]

 docker inspect --format='{{.Id}} {{.Parent}}' aaa99999
 
 sha256:aaa99999 sha256:abc12345

- aaa99999の親がabc12345

** 子イメージを削除する [#ha76ff95]
*** 3. 子イメージを削除する [#ha76ff95]

 docker rmi  11111111 22222222 aaa99999

** 目的のイメージを削除する [#jb1adec3]
*** 4. 目的のイメージを削除する [#jb1adec3]

 docker rmi abc12345

** 参考 [#o256eeab]

- https://stackoverflow.com/questions/36584122/how-to-get-the-list-of-dependent-child-images-in-docker
- https://pythonspeed.com/articles/docker-history/

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS