集装箱实时迁移

我想通过Docker将正在运行的容器从主机移动到主机。 我正在使用docker checkpoint create命令,它的作用是创build检查点作为根,我不能在Python中触摸它们。 有没有强迫docker创build文件作为另一个用户,或者Python中的根生成的文件?

当一个同事和我在OpenStack Summit Barcelona上进行实时迁移谈话和演示时,我们只使用了tar命令中的sudo将创build的检查点提取到/tmp一个文件中,然后将其用于ssh / scp到另一个主机。 这不是完美的答案,因为你仍然需要root权限来访问Docker元数据目录中创build的检查点,但是显示你至less可以将一个根需要的操作提取到一个单独的特权脚本中,其余的迁移只需要“正常”访问docker客户端命令。

您可以在这里看到我们的迁移脚本示例: https : //github.com/stmuraka/container-migration/blob/master/Examples/migrateExample.sh