Docker 中如果 commit 了一个镜像之后如何删除旧的镜像?

2015-10-19 11:33:10 +08:00
 SharkIng
commit 一个新的之后,老的如果有重名就会直接变成<none>的,如图:



然后 如果用 docker rmi 去删除的话提示删除失败
按照网上的办法 docker rmi $(.......) 也不行

有谁知道怎么删除掉么?
7760 次点击
所在节点    Docker
11 条回复
caoyue
2015-10-19 11:52:21 +08:00
docker rmi -f ?
SharkIng
2015-10-19 13:28:07 +08:00
@caoyue 试了也不行 依然报错
skydiver
2015-10-19 13:29:14 +08:00
报的什么错啊贴出来,要不然大家怎么帮你……
timonwong
2015-10-19 13:47:00 +08:00
如果有 container 在用,是删除不了的,你先 docker ps -a 看看有没有用相应 image 的 container ,然后先删 container ,再删 image
SharkIng
2015-10-19 13:49:27 +08:00
@timonwong 这个我知道 没有任何 container 了 docker ps -a 什么都没有 docker image 看不到那些 docker image -a 的时候才能看到 那些就删不掉


@skydiver 提示就是删除失败 英文来说就是什么 remove image fail 什么的好像 我明早起来上图。

难道大家都没遇到过这种情况么
skydiver
2015-10-19 14:11:44 +08:00
@SharkIng docker images 是看所有的 image , docker images -a 可以看到的每个 image 的历史版本,历史版本当然是删不掉的了……
SharkIng
2015-10-20 04:50:56 +08:00
@skydiver 可是既然是历史版本为什么还会在那呢?显示在上面总觉的有那么多东西占用空间很不爽
skydiver
2015-10-20 14:11:02 +08:00
@SharkIng 就像 git 的历史一样,应该只存储增量数据,所以不会占太多空间
SharkIng
2015-10-21 03:29:38 +08:00
@skydiver 好吧,感谢
gadmyth
2015-11-18 23:03:59 +08:00
@SharkIng 基于 layer, 一层加一层, 怎么可能删除
SharkIng
2015-11-19 02:54:49 +08:00
@gadmyth 所以就在那里一直在那里?主要是每个都显示 900 多 M ,挺吓人的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/229142

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX