是否可以将Docker镜像直接部署到AWS?

oro*_*aki 8 deployment amazon-ec2 amazon-web-services docker

我正在艰难地绕着Docker的可能性包围我的大脑,所以请原谅我的无知:

我可以获取我创建的数据库服务器的Docker镜像,并通过某种机制将其直接部署到新的EC2服务器吗?或者,我是否必须创建EC2服务器,然后在服务器上安装Docker,然后将映像拉入服务器等.

我也完全可以为这个过程的任何部分编写额外的代码.我只是不确定它是否可行.

我是否误解了Docker的最大用途?

jpe*_*zzo 5

最简单的方法是按照你的说法去做(创建EC2实例,安装Docker,拉图像,运行图像).

如果你想摆脱LXC(无论如何都非常小)的开销,有多种解决方案:

  • 你可以docker export用来生成容器rootfs的tarball,在EC2实例上解压缩tarball,并在那里chroot;
  • 您可以chroot向Docker 添加运行时,以自动方式执行此操作(每个都docker run将映射到chroot);
  • 如果Docker镜像是从Dockerfile构建的,您可以尝试将该FROM行映射到基本EC2 AMI,然后手动应用Dockerfile(或者例如通过cloudinit).

尝试获取原生图像(使用最后的解决方案)很有吸引力,但它也是最不可靠的解决方案,因为无法在Docker基础映像和EC2基础映像之间建立可靠的映射.

如果您的所有基础都是例如Ubuntu,那么您可能会很好地将Dockerfiles转换为cloudinit模板; 但我会亲自挑选选项1或2.