请教一下, docker 如何删除一个镜像 image 的层 layer?

2018-07-29 21:08:51 +08:00
 wr410
事情是这样的,我制作了一个 image,通过 save 导出为 tar 包,然后把这个镜像通过 load 导入到另一台机子上。

新的机子上,通过 docker history 查看到层的信息,但是除了最顶一层,其余的 ID 均为<missing>。

所以看到资料说通过 tag 可以进行层的回滚,但是这里没有 ID 可用也就似乎无法使用 tag 命令了。

按照我的理解,docker 的镜像应该是层的叠加而成的,那么进行回滚时理论上也应该可以逐层回滚吧?

所以,我想问的是,我导入的镜像,如何进行层的回滚?
4426 次点击
所在节点    Docker
1 条回复
Keller0
2018-07-30 21:13:52 +08:00
在 build 的主机上有 cache,可以用 tag。
pull 下来 /save 然后 load 都不能‘层回滚’的,因为 build 的操作跟上下文环境有关,不像 git。
https://github.com/moby/moby/issues/20131
https://github.com/moby/moby/issues/20316

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

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

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

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

© 2021 V2EX