如何在AWS Batch作业中覆盖Docker映像?

时间:2019-05-28 21:43:15

标签: amazon-web-services aws-batch

在AWS Batch中,我试图覆盖提交作业时在作业定义中硬编码的图像。但是我没有看到任何相关文档。

当我在作业提交过程中尝试添加image字段时,我得到了其中一个:

  

参数验证失败:输入中的未知参数:“ image”,必须   可以是以下之一:jobName,jobQueue,arrayProperties,dependsOn,   jobDefinition,参数,containerOverrides,retryStrategy,超时

  

参数验证失败:containerOverrides中的参数未知:   “图像”,必须是以下之一:vcpus,内存,命令,环境

1 个答案:

答案 0 :(得分:2)

我相信这是不可能的。

image是一个容器属性,因为this doc在命令,vcpus和内存旁边显示了它,但是{{1}中没有列出许多容器属性(例如,作业角色arn) }文档。

第二条错误消息显示了所有可以覆盖的容器属性,与文档中的属性相匹配。

aws batch submit-job help

JSON格式的容器替代的列表,该列表在指定的作业定义中指定容器的名称,并且容器应接收的替代。您可以使用命令覆盖来覆盖容器的默认命令(在作业定义或Docker映像中指定)。您还可以覆盖容器上的现有环境变量(在作业定义或Docker映像中指定),或使用环境替代向其添加新的环境变量。

速记语法:

--container-overrides (structure)

JSON语法:

vcpus=integer,memory=integer,command=string,string,instanceType=string,environment=[{name=string,value=string},{name=string,value=string}],resourceRequirements=[{value=string,type=string},{value=string,type=string}]