如果使用“不重新启动”选项,Amazon EC2图像创build会中断docker文件夹

我有两台容器运行Docker的AWS Linux机器。 如果我使用“no-reboot”选项( aws ec2 create-image --no-reboot )创buildAMI,那么当我从该AMI创build机器时,Docker将会损坏,例如docker ps命令永远挂起。

我试图删除/var/run/docker并重新启动docker服务。 这没有帮助。 我试图从系统卸载docker,并安装回去,仍然没有运气。

我也正常创build了AMI,没有“不重启”,并且在这种情况下一切正常。

不重启AMI的创build如何影响这种方式呢? 我知道“无重启”选项的文档和含义,但是Docker如何破解如此核心,仍然很奇怪。

Docker version 1.12.6, build 7392c3b/1.12.6 Linux ip-10-0-1-124 4.4.10-22.54.amzn1.x86_64

似乎在创buildAMI之前不重新启动您的实例可能会导致不一致。 从AWS文档 :

Amazon EC2在创buildAMI之前closures实例,以确保在创build过程中实例上的所有内容都停止并处于一致状态。 如果您确信您的实例处于适合AMI创build的一致状态,那么您可以告知Amazon EC2不要closures电源并重新启动实例。 某些文件系统(如XFS)可以冻结和解冻活动,从而无需重新启动实例就可以安全地创build映像。

也来自同一页:

警告

如果您select不重新启动,我们无法保证所创build映像的文件系统完整性。

很可能,通过使用--no-reboot选项,您会损害对于Docker正常运行至关重要的一部分文件系统。

事实certificate,它与devicemapper文件夹中的很多已停用的容器相关。 查看详细信息: 在服务器重新启动后,“docker ps”永远挂起