是否可以从Docker镜像创建AWS AMI?

时间:2017-07-17 11:17:48

标签: amazon-web-services docker amazon-ecs ami

我的AWS ECR中有一个Docker镜像,我希望将其转换为AWS AMI,以便在环境中创建实例。

尝试在Docker容器上使用AMI的原因

我必须在某些文本文件的m4.xlarge实例内的Docker容器中运行计算密集型ML任务。但是,使用Docker,实例的CPU利用率达到100%,并且脚本在成熟之前就会被杀死。

但是,它在Docker之外的同一个实例中运行良好。

所以,我想从Docker转移到AMI,但是我也想利用Docker来创建环境,以及它在我的本地启用的测试速度。

那么,是否可以从Docker镜像中创建一个AMI ,我测试并部署到我的ECS注册表?

2 个答案:

答案 0 :(得分:1)

似乎Docker镜像或泊坞窗出现问题或配置错误。 你提到实例在docker之外运行相同的脚本没有问题吗? 然后使用正在运行的脚本更好地创建实例的AMI,您根本不需要docker。 在docker中运行脚本最多可能意味着docker配置限制CPU,但主机CPU不会达到100%并杀死脚本。 您应该尝试使用相同的映像运行docker容器,但是在sleep10000运行时,您可以进入容器,运行感兴趣的脚本并查看失败的内容。

答案 1 :(得分:1)

虽然有一个开源工具可以从docker文件创建/构建AWS AMI,但是只有支持的指令是ENV,RUN,COPY和ADD,其他说明,没有直接的方法可以从docker镜像创建AWS AMI。将被忽略。

用于从Docker文件构建AWS AMI的开源工具

https://github.com/mickep76/docker-build-ami

https://pypi.python.org/pypi/docker-build-ami/0.1.3

因此,如果您真的有兴趣尝试继续从docker镜像创建一个正确的docker文件。为此,您可以参考以下链接

Is it possible to extract the Dockerfile from a docker container

How to generate a Dockerfile from an image?