4

我正在使用 Docker 运行容器。我正在制作容器文件系统状态的快照,作为与容器基础的差异,使用docker commit. 我还想在一个 tar 文件中进行快照,该文件仅存储为提交而更改的文件。

使用docker diff我可以查看哪些文件已更改。使用docker export我在 tar 中获取容器中的所有文件。如何从基础中获取仅包含已更改文件的 tar 文件?理想情况下,我还可以排除目录(如/dev)。

4

1 回答 1

4

该 tarball 正是存储在 Docker 注册表中的内容!

如果您感兴趣的快照已经在注册表中,您可以使用Docker 注册表协议来检索它。

如果它仅在本地存在,您可以查看/var/lib/docker/graph/<imageid>/layer:更改的文件在此处。请注意,这个位置在 Docker 0.7 中可能会发生变化,因为它目前是作为 AUFS 实现的工件。

于 2013-10-20T01:58:15.007 回答