如何在 AWS Batch 上使用 docker compose?

use*_*257 5 amazon-web-services docker docker-compose aws-batch aws-ecs

我有一个多容器(docker compose)应用程序。我想在 AWS Batch 上离线扩展它以处理 S3 上的大量数据。我用于 docker compose 的 .yml 文件如下所示:

version: '2'

services:
    container1:
      container_name:
      image:
      ports:

    container2:
      container_name:
      image:
      depends_on: container1
      ports:
Run Code Online (Sandbox Code Playgroud)

不幸的是,我在网上找不到处理这种情况的任何示例或教程。谁能帮我理解我应该如何解决这个问题?

Pau*_*Pau 0

日期:2018年6月11日:

目前还不行,如果是多容器的docker compose就不行。没有 docker-compose up 指令的选项,只允许使用单个 docker 镜像。定义如下:

"Properties" : {
    "Type" : "container",
    "Parameters" : {
      "net": "host"
    },
    "ContainerProperties" : {
      "Command" : [ "command1" ],
      "Memory" : 2000,
      "Environment": [
          {
            "Name" : "NAME",
            "Value" : "true"
          }
      ],
      "Vcpus" : 2,
      "Image" : "redis:latest"
    },
    "JobDefinitionName" : "job-1",
    "RetryStrategy" : {
        "Attempts" : 1
    }
}
Run Code Online (Sandbox Code Playgroud)

事实上,在官方文档中被指定container为类型的唯一有效值:

类型 type 当您注册作业定义时,您可以指定作业的类型。目前仅支持容器作业。

类型:字符串

有效值:容器

必填:是


对于单个容器,有一个 cli 工具可以将 docker-compose 转换为作业定义,但实际上,您可以手动执行此操作: