如何拍摄容器快照并将快照加载到另一台docker主机上。我想知道容器快照,而不是为了图像。我对docker中的export/import和save/load命令感到困惑。我喜欢获得更多的清晰或文档,以便更深入地理解它们。
包含运行容器和屋顶的元数据的快照。在另一个docker主机中的确切状态。在这个方向上的帮助将是很好的。
发布于 2014-03-13 20:54:30
command docker commit
会为您的容器拍摄快照。该快照是一个映像,您可以将其放在(私有)存储库中,以便能够将其拉到另一台主机上。
不使用图像(您说要避免使用图像)的一个选项实际上是save和load。根据文档,这会将容器与所有文件层一起保存。所以如果你有一个子容器的设置,比如Ubuntu > JavaJDK > Elasticsearch > my-container,所有4个文件层都会在里面。但是,您可能已经在另一台主机上以图像的形式显示了前3层,在这种情况下,save
会产生大量开销。然后,您可以使用export和import,根据文档,它们只导出顶层文件层(换句话说,是容器,而不是它下面的图像)。
有关图像、容器、文件层等的更多信息可以在official documentation (例如file system )中找到。
发布于 2018-05-16 21:14:53
给定一台linux主机,Docker可以使用CRIU保存容器的执行状态。CRIU仍处于实验阶段,您可以通过运行以下命令来查看所有可能的命令(在启动实验模式后):
docker checkpoint
您可以使用--save-dir
选项将检查点放在您选择的目录中。
然后,您可以使用
docker start --checkpoint (checkpoint name) --checkpoint-dir (checkpoint directory)
恢复检查点。
如果移动服务器,您可能需要随身携带图像。
你可以在文档上阅读更多内容:https://docs.docker.com/engine/reference/commandline/checkpoint/
https://stackoverflow.com/questions/22378777
复制相似问题