FROM ubuntu:latest
RUN echo hello
RUN echo goodbye
RUN echo something else
然后构建它:
podman build . -t foo
然后您可以查看历史记录:
podman history foo
ID CREATED CREATED BY SIZE COMMENT
4eb0380df1fc 6 seconds ago /bin/sh -c echo something else 1.02 kB FROM localhost/foo:latest
aedc2b11640a About a minute ago /bin/sh -c echo goodbye 1.02 kB FROM localhost/foo:latest
6782b9a36ab3 4 minutes ago /bin/sh -c echo hello 2.05 kB FROM docker.io/library/ubuntu:latest
825d55fb6340 2 days ago /bin/sh -c #(nop) CMD ["bash"] 0 B
<missing> 2 days ago /bin/sh -c #(nop) ADD file:b83df51ab7caf8a... 75.1 MB
如果我理解您的要求...您正在使用 podman 并且您有一个具有多个图层的图像...您希望有效地回滚到较早的图层。
很像 git,podman 图像名称只是对图像 id 的引用,每个图像层都应该有自己的 id。
您可以使用该命令查看图像层,
podman history
然后使用 为您选择的层添加标签podman tag
。例如,如果您从 Containerfile 开始:
然后构建它:
然后您可以查看历史记录:
然后你可以标记一个较低的层
这使您可以使用
bar
实际上是图像的较低(较早)层的图像foo
:显然你不需要给图像一个新的名字,你可以使用相同的名字。但请注意,当您这样做时,您可能无法访问已删除的上层。