在EC2中运行多个docker实例

我是AWS新手。 所以如果我的问题没有意义,请耐心等待。

我的目标是在一个AWS EC2实例中运行多个docker容器(使用不同的dockerconfiguration)。 到目前为止,我已经能够以编程方式启动和停止使用java SDK的EC2实例。

我猜想在EC2中运行Docker实例我将不得不使用ECS Api(AmazonECSClient – 包含在AWS java SDK中)。 不幸的是,我几乎没有任何例子可以使用AWS java SDKfind这个例子。

有人知道如何做到这一点? 任何指针都会有帮助。

这里的api文档给出了足够清晰的答案。

你基本上;

  1. 在本地创buildDocker镜像。
  2. 上传/推送到您的dockerregistry(例如docker中心)
  3. 指定一个任务定义,包括您的泊坞窗图片引用。
  4. 根据任务定义中指定的容器映像启动群集。

ECS是来自亚马逊的容器服务,需要你configuration你的应用程序由服务pipe理。

如果您不想使用ECS,则通过ec2 SDK的唯一选项是通过用户数据部分的脚本定义容器的开始。 但是你只能在实例启动时控制容器的启动。

如果你需要更多的控制docker进程的启动和停止,你可能需要添加诸如厨师,木偶和ansible等编排工具。